diff --git a/.github/sla.yml b/.github/sla.yml index f0ce3592d482..005dfda9139a 100644 --- a/.github/sla.yml +++ b/.github/sla.yml @@ -84,3 +84,18 @@ subject: "Action Required: Please respond to issue ${URL}" to: ${ASSIGNEE} cc: vscswagger@microsoft.com + +- scheduleTask: + action: sendEmail + scope: pull_request + name: "send email given path change" + trigger: + - path + args: + message: '

You have just completed the first step towards onboarding your API change to the Compute Management library.

We (the CPlatSDK/PowerShell team) manage the Compute library's API and SDK for the following clients: Swagger (REST api), .NET SDK, and Azure PowerShell.

You've just opened a PR making changes in the Compute Management Library's path of the Azure REST Api Specs repository.

What's next?

  1. Your api specs need to be reviewed and approved by us and the ARM team
  2. Make sure you that can generate the .NET SDK from your API specs using the Autorest tool (NET SDK autogeneration)
  3. While your specs are getting reviewed, you should be working on the .NET SDK. (SDK repo)
    1. Once you generate the .NET SDK, you need to create the SDK tests and perform recordings and playbacks. (NET SDK testing)
    2. With the newly generated SDK with tests, you can make a pull request to the SDK repository.
      Make sure to add a reference to your Swagger pull request in the comments.
  4. [If applicable] At this stage, you can get started on the Azure PowerShell part.
    1. All you need to do is send a design doc of any change/new Azure PowerShell cmdlet related to your api by creating an issue with your design here.
      Then, send an email to azdevxpsdr@microsoft.com with the issue number and cc our dl (cplatsdkdev@microsoft.com) on the email, so we can leave comments on your design doc as well.
    2. Once your PowerShell cmdlet design has been approved, send an email to our team
      We will implement and test the PowerShell cmdlet following the approved design. We will then make a pull request to the appropriate repository
  5. [If applicable] You can also get started on any Azure CLI module or extension for your API change. Find more information about next steps on that process here.

This email was automatically sent. Please send an email to cplatsdkdev@microsoft.com if you have any questions.

' + targetPaths: + - "specification/compute/resource-manager/Microsoft.Compute/**" + subject: "[Action Required] CPlat Swagger Pull Request opened: Next steps" + to: ${AUTHOR} + cc: + - cplatsdkdev@microsoft.com diff --git a/custom-words.txt b/custom-words.txt index e135c62569bf..741cf68d8cf1 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -16,6 +16,7 @@ accountid accountname ACLs aclspec +actionplans acquisitionid acrapi activityruns @@ -503,6 +504,7 @@ endpointkeys endpointname endswith endtime +endTime Enein engagementfabric endzone @@ -1098,6 +1100,7 @@ PCNET peerings Pendingissuance Pendingrevocation +percentComplete perfcounters perfmon performant @@ -1164,6 +1167,7 @@ projectable Protectable provisioner provisioningservices +provisioningState Psec PSNR ptrdname @@ -1471,6 +1475,7 @@ startswith starttask starttaskfailed starttime +startTime stateful staticsite statusdir diff --git a/documentation/code-gen/configure-typescript-sdk.md b/documentation/code-gen/configure-typescript-sdk.md new file mode 100644 index 000000000000..881578aa402f --- /dev/null +++ b/documentation/code-gen/configure-typescript-sdk.md @@ -0,0 +1,235 @@ +# Readme Configuration Guide for Azure SDK for Javascript (Typescript) +This file describe how to configure readme files to make it available for Azure SDK for Javascript (Typescript) code generation. + +## Common Configuration +Configure basic package information. + +### Basic Information +Configure package title/description/tag. +~~~~ +// file: readme.md + +``` yaml +title: xxxxConfigurationClient +description: xxxx Configuration Client +openapi-type: arm +tag: package-xxxx-xx-xx +``` +~~~~ + +### tag +Tags are used to define what swagger files are used in specific client SDK. In Single-API client, only one tag can be used to generate SDK client. +A tag can contains a bunch of swagger files which are used to generate the SDK. + +The name of a tag should be in form of package-yyyy-mm-dd[-xxx], for example below tag names are available: +- package-2020-02-03 +- package-2020-03-22-preview +- package-2020-05-03-only + +while the below tag names are invalid names: +- 2020-03-04 +- package-preview-2020-03-04 + +A tag can be configured like below: +~~~~ +// file: readme.md + + +### Tag: package-2019-12-01 + +These settings apply only when `--tag=package-2019-12-01` is specified on the command line. + +``` yaml $(tag) == 'package-2019-12-01' +input-file: +- Microsoft.Compute/stable/2019-12-01/compute.json +- Microsoft.Compute/stable/2019-12-01/runCommands.json +- Microsoft.Compute/stable/2019-12-01/gallery.json +``` +~~~~ + + +## Swagger to SDK +To make Azure SDK for Javascript (Typescript) can be generated from the tag, swagger-to-sdk need to be configured: + +~~~ +// file: readme.md + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-js + - ... + + +## Typescript + +See configuration in [readme.typescript.md](./readme.typescript.md) +~~~ + +## Typescript Configuration +Typescript dedicated configurations are configured in readme.typescript.md. +the typical package-name is usually like `@azure/arm-xxx` where the xxx is related with the service name. +and the typical output-folder in the azure-sdk-for-js is like `$(typescript-sdks-folder)/sdk/xxx/arm-xxx` where the xxx is related with the service name. +A typical readme.typescript.md is like this: +~~~ +// file: readme.typescript.md + +## 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-apimanagement" + output-folder: "$(typescript-sdks-folder)/sdk/apimanagement/arm-apimanagement" + clear-output-folder: true + generate-metadata: true +``` + +~~~ + +## Multi-api +Currently the Azure SDK for Javascript (Typescript) doesn't support multi-api which means each operation contained in one package should only contains one api-version's. and Azure SDK for Javascript (Typescript) only supports single api package. + +## Multi-packages +The batch is a tag list which are used in the one RP has multi-package scenarios. For example, +the Resources RP has several independent packages like features, lock, policy. +First of all, you need to have different yaml block for each package to define the default tag for that specific package. +~~~ +// file: readme.md +## Configuration + +### Basic Information + +These are the global settings for the Resource API. + +``` yaml +openapi-type: arm +``` + +``` yaml $(package-features) +tag: package-features-2015-12 +``` + +``` yaml $(package-locks) +tag: package-locks-2016-09 +``` + +``` yaml $(package-policy) +tag: package-policy-2019-09 +``` + +``` yaml $(package-resources) +tag: package-resources-2020-06 +``` + +~~~ +Then for each default tag, you can define the input swagger like normal tag. +~~~ + +### Tag: package-features-2015-12 + +These settings apply only when `--tag=package-features-2015-12` is specified on the command line. + +``` yaml $(tag) == 'package-features-2015-12' +input-file: +- Microsoft.Features/stable/2015-12-01/features.json +``` + +### Tag: package-locks-2016-09 + +These settings apply only when `--tag=package-locks-2016-09` is specified on the command line. + +``` yaml $(tag) == 'package-locks-2016-09' +input-file: +- Microsoft.Authorization/stable/2016-09-01/locks.json +``` + +### Tag: package-policy-2019-09 + +These settings apply only when `--tag=package-policy-2019-09` is specified on the command line. + +``` yaml $(tag) == 'package-policy-2019-09' +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 + +# Needed when there is more than one input file +override-info: + title: PolicyClient +``` + +### Tag: package-resources-2020-06 + +These settings apply only when `--tag=package-resources-2020-06` is specified on the command line. + +``` yaml $(tag) == 'package-resources-2020-06' +input-file: +- Microsoft.Resources/stable/2020-06-01/resources.json +``` +~~~ + +Finally, in your readme.typescript.md you should include what packages you want to include in the Azure SDK for Javascript (Typescript). +And in each package's section define the default package name output folder in azure-sdk-for-js repo etc. + +~~~ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) && !$(profile) +typescript: + azure-arm: true + batch: true + generate-metadata: true +batch: + - package-features: true + - package-locks: true + - package-policy: true + - package-resources: true +``` + +```yaml $(typescript) && $(package-features) && !$(profile) +typescript: + package-name: "@azure/arm-features" + output-folder: "$(typescript-sdks-folder)/sdk/features/arm-features" + clear-output-folder: true +``` + +```yaml $(typescript) && $(package-locks) && !$(profile) +typescript: + package-name: "@azure/arm-locks" + output-folder: "$(typescript-sdks-folder)/sdk/locks/arm-locks" + clear-output-folder: true +``` + +```yaml $(typescript) && $(package-policy) && !$(profile) +typescript: + package-name: "@azure/arm-policy" + output-folder: "$(typescript-sdks-folder)/sdk/policy/arm-policy" + clear-output-folder: true +``` + +```yaml $(typescript) && $(package-resources) && !$(profile) +typescript: + package-name: "@azure/arm-resources" + output-folder: "$(typescript-sdks-folder)/sdk/resources/arm-resources" + clear-output-folder: true +``` + +~~~ + + +## Run codegen +After configure all the readme files, autorest can be used to generate SDK. +~~~ +autorest --typescript --typescript-sdks-folder=/home/qiaozha/code/azure-sdk-for-js --license-header=MICROSOFT_MIT_NO_VERSION /home/qiaozha/code/azure-rest-api-specs/specification/storage/resource-manager/readme.md --use=@microsoft.azure/autorest.typescript@4.2.2 +~~~ diff --git a/documentation/samplefiles/readme.go.md b/documentation/samplefiles/readme.go.md index 14f46860e4d1..932353580de4 100644 --- a/documentation/samplefiles/readme.go.md +++ b/documentation/samplefiles/readme.go.md @@ -8,12 +8,35 @@ go: clear-output-folder: true ``` +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2019-12-01 + - tag: package-2020-07-01-preview + # add every tag listed below +``` + ### Tag: package-2019-12-01 and go These settings apply only when `--tag=package-2019-12-01 --go` is specified on the command line. -Please also specify `--go-sdks-folder=`. +Please also specify `--go-sdk-folder=`. ```yaml $(tag) == 'package-2019-12-01' && $(go) -namespace: Microsoft.YourServiceName -output-folder: $(go-sdks-folder)/YourServiceName/Generated +# NOTE: go namespace can only consist of lower case letters, numbers and underscores +namespace: yourservicename +# NOTE: for special cases, you can hard code the namespace in the output-folder +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-12-01/$(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. +Please also specify `--go-sdk-folder=`. + +```yaml $(tag) == 'package-2020-07-01-preview' && $(go) +# NOTE: go namespace can only consist of lower case letters, numbers and underscores +namespace: yourservicename +# NOTE: a preview api-version must be under the preview sub-directory +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-07-01-preview/$(namespace) ``` diff --git a/specification/advisor/resource-manager/readme.md b/specification/advisor/resource-manager/readme.md index dc0924b739df..1ac722c6bee0 100644 --- a/specification/advisor/resource-manager/readme.md +++ b/specification/advisor/resource-manager/readme.md @@ -29,6 +29,14 @@ openapi-type: arm tag: package-2020-01 ``` +### Tag: package-2020-07-preview + +These settings apply only when `--tag=package-2020-07-preview` is specified on the command line. + +```yaml $(tag) == 'package-2020-07-preview' +input-file: + - Microsoft.Advisor/preview/2020-07-01-preview/advisor.json +``` ### Tag: package-2020-01 @@ -149,11 +157,11 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Advisor/preview/2020-07-01-preview/advisor.json - $(this-folder)/Microsoft.Advisor/stable/2020-01-01/advisor.json - $(this-folder)/Microsoft.Advisor/stable/2017-04-19/advisor.json - $(this-folder)/Microsoft.Advisor/stable/2017-03-31/advisor.json - $(this-folder)/Microsoft.Advisor/preview/2016-07-12-preview/advisor.json - - $(this-folder)/Microsoft.Advisor/preview/2020-07-01-preview/advisor.json ``` diff --git a/specification/apimanagement/control-plane/Microsoft.ApiManagement/preview/2017-03-01/apimproducts.json b/specification/apimanagement/control-plane/Microsoft.ApiManagement/preview/2017-03-01/apimproducts.json index c295c362002e..7818c4d06ba6 100644 --- a/specification/apimanagement/control-plane/Microsoft.ApiManagement/preview/2017-03-01/apimproducts.json +++ b/specification/apimanagement/control-plane/Microsoft.ApiManagement/preview/2017-03-01/apimproducts.json @@ -861,13 +861,13 @@ "type": "boolean" }, "approvalRequired": { - "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false.", + "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of true.", "type": "boolean" }, "subscriptionsLimit": { "type": "integer", "format": "int32", - "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false." + "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of true." }, "state": { "type": "string", diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/definitions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/definitions.json index 5a2330092a28..f15c144c4120 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/definitions.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/definitions.json @@ -3330,13 +3330,13 @@ "type": "boolean" }, "approvalRequired": { - "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false.", + "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of true.", "type": "boolean" }, "subscriptionsLimit": { "type": "integer", "format": "int32", - "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false." + "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of true." }, "state": { "type": "string", diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/definitions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/definitions.json index 3ce3a7c7b67b..87b45aa20ad4 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/definitions.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/definitions.json @@ -3545,13 +3545,13 @@ "type": "boolean" }, "approvalRequired": { - "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false.", + "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of true.", "type": "boolean" }, "subscriptionsLimit": { "type": "integer", "format": "int32", - "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false." + "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of true." }, "state": { "type": "string", diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2016-07-07/apimanagement.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2016-07-07/apimanagement.json index 95d7789cdb07..801e3c890ddc 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2016-07-07/apimanagement.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2016-07-07/apimanagement.json @@ -5344,12 +5344,12 @@ }, "approvalRequired": { "type": "boolean", - "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false." + "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of true." }, "subscriptionsLimit": { "type": "integer", "format": "int32", - "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false." + "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of true." }, "state": { "type": "string", @@ -5624,12 +5624,12 @@ }, "approvalRequired": { "type": "boolean", - "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false." + "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of true." }, "subscriptionsLimit": { "type": "integer", "format": "int32", - "description": "whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false." + "description": "whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of true." }, "state": { "type": "string", diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2016-10-10/apimproducts.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2016-10-10/apimproducts.json index 24a54f3eba94..f2eade375f3a 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2016-10-10/apimproducts.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2016-10-10/apimproducts.json @@ -826,12 +826,12 @@ }, "approvalRequired": { "type": "boolean", - "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false." + "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of true." }, "subscriptionsLimit": { "type": "integer", "format": "int32", - "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false." + "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of true." }, "state": { "type": "string", @@ -876,12 +876,12 @@ }, "approvalRequired": { "type": "boolean", - "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false." + "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of true." }, "subscriptionsLimit": { "type": "integer", "format": "int32", - "description": "whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false." + "description": "whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of true." }, "state": { "type": "string", diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimproducts.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimproducts.json index 6ce08fc02df5..b5db2b8d860e 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimproducts.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimproducts.json @@ -1126,13 +1126,13 @@ "type": "boolean" }, "approvalRequired": { - "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false.", + "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of true.", "type": "boolean" }, "subscriptionsLimit": { "type": "integer", "format": "int32", - "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false." + "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of true." }, "state": { "type": "string", diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimproducts.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimproducts.json index d2106e08cd2f..e341239d3b07 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimproducts.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimproducts.json @@ -1177,13 +1177,13 @@ "type": "boolean" }, "approvalRequired": { - "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false.", + "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of true.", "type": "boolean" }, "subscriptionsLimit": { "type": "integer", "format": "int32", - "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false." + "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of true." }, "state": { "type": "string", diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/definitions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/definitions.json index abe436b4031f..79a0c9320a0d 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/definitions.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/definitions.json @@ -3485,13 +3485,13 @@ "type": "boolean" }, "approvalRequired": { - "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false.", + "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of true.", "type": "boolean" }, "subscriptionsLimit": { "type": "integer", "format": "int32", - "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false." + "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of true." }, "state": { "type": "string", diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/definitions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/definitions.json index 76b03b69548c..f4361ca41aab 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/definitions.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/definitions.json @@ -3545,13 +3545,13 @@ "type": "boolean" }, "approvalRequired": { - "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false.", + "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of true.", "type": "boolean" }, "subscriptionsLimit": { "type": "integer", "format": "int32", - "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false." + "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of true." }, "state": { "type": "string", diff --git a/specification/apimanagement/resource-manager/readme.md b/specification/apimanagement/resource-manager/readme.md index 42e087ac4594..c9c4710e178d 100644 --- a/specification/apimanagement/resource-manager/readme.md +++ b/specification/apimanagement/resource-manager/readme.md @@ -46,6 +46,7 @@ input-file: - 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 @@ -392,6 +393,7 @@ input-file: - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimbackends.json - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimcaches.json - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimcertificates.json + - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimcontenttypes.json - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimdeployment.json - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimdiagnostics.json - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimemailtemplates.json @@ -417,7 +419,6 @@ input-file: - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimtags.json - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimtenant.json - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimusers.json - - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/apimcontenttypes.json - $(this-folder)/Microsoft.ApiManagement/stable/2019-12-01/definitions.json - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimanagement.json - $(this-folder)/Microsoft.ApiManagement/preview/2019-12-01-preview/apimapis.json diff --git a/specification/appconfiguration/resource-manager/readme.md b/specification/appconfiguration/resource-manager/readme.md index fcc2df72d21d..1368cb987b57 100644 --- a/specification/appconfiguration/resource-manager/readme.md +++ b/specification/appconfiguration/resource-manager/readme.md @@ -141,10 +141,10 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.AppConfiguration/stable/2020-06-01/appconfiguration.json - $(this-folder)/Microsoft.AppConfiguration/preview/2019-11-01-preview/appconfiguration.json - $(this-folder)/Microsoft.AppConfiguration/preview/2019-02-01-preview/appconfiguration.json - $(this-folder)/Microsoft.AppConfiguration/stable/2019-10-01/appconfiguration.json - - $(this-folder)/Microsoft.AppConfiguration/stable/2020-06-01/appconfiguration.json ``` diff --git a/specification/applicationinsights/data-plane/Microsoft.Insights/preview/v1/AppInsights.json b/specification/applicationinsights/data-plane/Microsoft.Insights/preview/v1/AppInsights.json index 506c07d7005c..84c37e5c22d6 100644 --- a/specification/applicationinsights/data-plane/Microsoft.Insights/preview/v1/AppInsights.json +++ b/specification/applicationinsights/data-plane/Microsoft.Insights/preview/v1/AppInsights.json @@ -27,11 +27,11 @@ "application/json" ], "securityDefinitions": { - "azure_auth": { + "oauth2": { "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize?resource=https%3A%2F%2Fapi.applicationinsights.io", "flow": "implicit", - "description": "Azure Active Directory OAuth2 Flow", + "description": "Connect to Azure Application Insights API", "scopes": { "user_impersonation": "impersonate your user account" } @@ -39,7 +39,7 @@ }, "security": [ { - "azure_auth": [ + "oauth2": [ "user_impersonation" ] } diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-06-17-preview/workbooks_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-06-17-preview/workbooks_API.json index 7edd5795db3b..85fd1577f11b 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-06-17-preview/workbooks_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-06-17-preview/workbooks_API.json @@ -34,7 +34,7 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourceGroup/{resourceGroupName}/providers/microsoft.insights/workbooks": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/workbooks": { "get": { "description": "Get all Workbooks defined within a specified resource group and category.", "operationId": "Workbooks_ListByResourceGroup", @@ -85,7 +85,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroup/{resourceGroupName}/providers/microsoft.insights/workbooks/{resourceName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/workbooks/{resourceName}": { "get": { "description": "Get a single workbook by its resourceName.", "operationId": "Workbooks_Get", diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/workbookTemplates_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/workbookTemplates_API.json index d1c3fab2538e..6bc485e75fd9 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/workbookTemplates_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/workbookTemplates_API.json @@ -34,7 +34,7 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourceGroup/{resourceGroupName}/providers/microsoft.insights/workbooktemplates": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/workbooktemplates": { "get": { "description": "Get all Workbook templates defined within a specified resource group.", "operationId": "WorkbookTemplates_ListByResourceGroup", @@ -73,7 +73,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroup/{resourceGroupName}/providers/microsoft.insights/workbooktemplates/{resourceName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/workbooktemplates/{resourceName}": { "get": { "description": "Get a single workbook template by its resourceName.", "operationId": "WorkbookTemplates_Get", diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-06-02-preview/livetoken_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-06-02-preview/livetoken_API.json index ecb4fd85d389..bac300f6f969 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-06-02-preview/livetoken_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-06-02-preview/livetoken_API.json @@ -42,7 +42,7 @@ "Operations" ], "summary": "List available operations.", - "description": "List the available operations supported by the Microsoft.EventGrid resource provider.", + "description": "List the available operations supported by the resource provider.", "operationId": "Operations_List", "consumes": [], "produces": [ @@ -93,7 +93,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorResponse" + "$ref": "../2020-03-01-preview/componentLinkedStorageAccounts_API.json#/definitions/ErrorResponse" } }, "200": { @@ -117,20 +117,6 @@ } }, "definitions": { - "ErrorResponse": { - "description": "Describes the format of an error response.", - "type": "object", - "properties": { - "code": { - "description": "Error code", - "type": "string" - }, - "message": { - "description": "Error message indicating why the operation failed.", - "type": "string" - } - } - }, "LiveTokenResponse": { "type": "object", "properties": { @@ -150,7 +136,7 @@ "description": "A collection of operations", "type": "array", "items": { - "$ref": "#/definitions/Operation" + "$ref": "#/definitions/OperationLive" } }, "nextLink": { @@ -159,7 +145,7 @@ } } }, - "Operation": { + "OperationLive": { "description": "Represents an operation returned by the GetOperations request", "type": "object", "properties": { diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/workbooks_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/workbooks_API.json index 3586ec6c86b1..f3fb7bdc4e2d 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/workbooks_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/workbooks_API.json @@ -34,7 +34,7 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourceGroup/{resourceGroupName}/providers/microsoft.insights/workbooks": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/workbooks": { "get": { "description": "Get all Workbooks defined within a specified resource group and category.", "operationId": "Workbooks_ListByResourceGroup", @@ -82,7 +82,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroup/{resourceGroupName}/providers/microsoft.insights/workbooks/{resourceName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/workbooks/{resourceName}": { "get": { "description": "Get a single workbook by its resourceName.", "operationId": "Workbooks_Get", diff --git a/specification/applicationinsights/resource-manager/readme.md b/specification/applicationinsights/resource-manager/readme.md index 3e00e6366502..eeeb91d57b0e 100644 --- a/specification/applicationinsights/resource-manager/readme.md +++ b/specification/applicationinsights/resource-manager/readme.md @@ -37,212 +37,73 @@ tag: package-preview-2020-06 directive: - suppress: LongRunningOperationsWithLongRunningExtension where: - - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/purge"].post + - '$.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/purge"].post' reason: Original creation of the service did not comply with current ARM schema standards. The team is aware of it and any future updates should rectify the issue. - - suppress: TrackedResourceListByImmediateParent where: - $.definitions reason: - we do have list operations available for our operations on individual instances of objects returned. False positives. - - suppress: PutRequestResponseScheme - reason: This api was existing there from 2015, it will break existing client if we change the request/response format - #where: - # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/exportconfiguration/{exportId}"].put - + reason: 'This api was existing there from 2015, it will break existing client if we change the request/response format' - suppress: ListInOperationName - reason: The return value is an object, not an array. Looks like a false positive of the validation tool. - #where: - # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/currentbillingfeatures"].get.operationId - + reason: 'The return value is an object, not an array. Looks like a false positive of the validation tool.' - suppress: PutInOperationName - reason: We are not doing create on this api, it is only doing update in this PUT api call. - #where: - # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/exportconfiguration/{exportId}"].put.operationId - # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/currentbillingfeatures"].put.operationId - + reason: 'We are not doing create on this api, it is only doing update in this PUT api call.' - suppress: XmsResourceInPutResponse - reason: This api was existing there from 2015, it will break existing client if we change the request/response format - #where: - # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/exportconfiguration/{exportId}"].put - # - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/currentbillingfeatures"].put - + reason: 'This api was existing there from 2015, it will break existing client if we change the request/response format' - suppress: RequiredPropertiesMissingInResourceModel - reason: This api was existing there from 2015, it will break existing client if we change the response format - #where: - # - $.definitions.ApplicationInsightsComponentExportConfiguration - # - $.definitions.ApplicationInsightsComponentBillingFeatures - + reason: 'This api was existing there from 2015, it will break existing client if we change the response format' - suppress: BodyTopLevelProperties - reason: This api was existing there from 2015, it will break existing client if we change the response format - #where: - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties - # - $.definitions.ApplicationInsightsComponentBillingFeatures.properties - + reason: 'This api was existing there from 2015, it will break existing client if we change the response format' - suppress: EnumInsteadOfBoolean - reason: This api was existing there from 2015, it will break existing client if we change the type - #where: - # - $.definitions.WebTestProperties.properties.Enabled - # - $.definitions.WebTestProperties.properties.RetryEnabled - # - $.definitions.ApplicationInsightsComponentDataVolumeCap.properties.StopSendNotificationWhenHitThreshold - # - $.definitions.ApplicationInsightsComponentDataVolumeCap.properties.StopSendNotificationWhenHitCap - # - $.definitions.ApplicationInsightsComponentQuotaStatus.properties.ShouldBeThrottled - + reason: 'This api was existing there from 2015, it will break existing client if we change the type' - suppress: DescriptionAndTitleMissing reason: Error addresses missing description/title in inner reference. Referenced model contains title and description. Redundant. from: componentAnnotations_API.json where: - $.definitions.AnnotationError.properties.innererror - - suppress: DescriptionAndTitleMissing reason: Error addresses missing description/title in inner reference. Referenced model contains title and description. Redundant. from: componentWorkItemConfigs_API.json where: - $.definitions.WorkItemConfigurationError.properties.innererror - - suppress: LROStatusCodesReturnTypeSchema reason: The response for 200 does define a schema in place. The test likely expects a 'ref' member. False failure. from: componentAnnotations_API.json where: - - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/Annotations"].put.responses["200"] - + - '$.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/Annotations"].put.responses["200"]' - suppress: DefinitionsPropertiesNamesCamelCase - reason: This api was existing there from 2015, it will break existing client if we change the name - # where: - # - $.definitions.ApplicationInsightsComponentProperties.properties.ApplicationId - # - $.definitions.ApplicationInsightsComponentProperties.properties.AppId - # - $.definitions.ApplicationInsightsComponentProperties.properties.Application_Type - # - $.definitions.ApplicationInsightsComponentProperties.properties.Flow_Type - # - $.definitions.ApplicationInsightsComponentProperties.properties.Request_Source - # - $.definitions.ApplicationInsightsComponentProperties.properties.InstrumentationKey - # - $.definitions.ApplicationInsightsComponentProperties.properties.CreationDate - # - $.definitions.ApplicationInsightsComponentProperties.properties.TenantId - # - $.definitions.ApplicationInsightsComponentProperties.properties.HockeyAppId - # - $.definitions.ApplicationInsightsComponentProperties.properties.HockeyAppToken - # - $.definitions.ApplicationInsightsComponentProperties.properties.SamplingPercentage - # - $.definitions.WebTestProperties.properties.SyntheticMonitorId - # - $.definitions.WebTestProperties.properties.Name - # - $.definitions.WebTestProperties.properties.Description - # - $.definitions.WebTestProperties.properties.Enabled - # - $.definitions.WebTestProperties.properties.Frequency - # - $.definitions.WebTestProperties.properties.Timeout - # - $.definitions.WebTestProperties.properties.Kind - # - $.definitions.WebTestProperties.properties.RetryEnabled - # - $.definitions.WebTestProperties.properties.Locations - # - $.definitions.WebTestProperties.properties.Configuration - # - $.definitions.WebTestGeolocation.properties.Id - # - $.definitions.ApplicationInsightsComponentExportRequest.properties.RecordTypes - # - $.definitions.ApplicationInsightsComponentExportRequest.properties.DestinationType - # - $.definitions.ApplicationInsightsComponentExportRequest.properties.DestinationAddress - # - $.definitions.ApplicationInsightsComponentExportRequest.properties.IsEnabled - # - $.definitions.ApplicationInsightsComponentExportRequest.properties.NotificationQueueEnabled - # - $.definitions.ApplicationInsightsComponentExportRequest.properties.NotificationQueueUri - # - $.definitions.ApplicationInsightsComponentExportRequest.properties.DestinationStorageSubscriptionId - # - $.definitions.ApplicationInsightsComponentExportRequest.properties.DestinationStorageLocationId - # - $.definitions.ApplicationInsightsComponentExportRequest.properties.DestinationAccountId - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties.ExportId - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties.InstrumentationKey - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties.RecordTypes - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties.ApplicationName - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties.SubscriptionId - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties.ResourceGroup - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties.DestinationStorageSubscriptionId - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties.DestinationStorageLocationId - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties.DestinationAccountId - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties.DestinationType - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties.IsUserEnabled - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties.LastUserUpdate - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties.NotificationQueueEnabled - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties.ExportStatus - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties.LastSuccessTime - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties.LastGapTime - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties.PermanentErrorReason - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties.StorageName - # - $.definitions.ApplicationInsightsComponentExportConfiguration.properties.ContainerName - # - $.definitions.ApplicationInsightsComponentBillingFeatures.properties.DataVolumeCap - # - $.definitions.ApplicationInsightsComponentBillingFeatures.properties.CurrentBillingFeatures - # - $.definitions.ApplicationInsightsComponentDataVolumeCap.properties.Cap - # - $.definitions.ApplicationInsightsComponentDataVolumeCap.properties.ResetTime - # - $.definitions.ApplicationInsightsComponentDataVolumeCap.properties.WarningThreshold - # - $.definitions.ApplicationInsightsComponentDataVolumeCap.properties.StopSendNotificationWhenHitThreshold - # - $.definitions.ApplicationInsightsComponentDataVolumeCap.properties.StopSendNotificationWhenHitCap - # - $.definitions.ApplicationInsightsComponentDataVolumeCap.properties.MaxHistoryCap - # - $.definitions.ApplicationInsightsComponentQuotaStatus.properties.AppId - # - $.definitions.ApplicationInsightsComponentQuotaStatus.properties.ShouldBeThrottled - # - $.definitions.ApplicationInsightsComponentQuotaStatus.properties.ExpirationTime - # - $.definitions.ApplicationInsightsComponentProactiveDetectionConfiguration.properties.Name - # - $.definitions.ApplicationInsightsComponentProactiveDetectionConfiguration.properties.Enabled - # - $.definitions.ApplicationInsightsComponentProactiveDetectionConfiguration.properties.SendEmailsToSubscriptionOwners - # - $.definitions.ApplicationInsightsComponentProactiveDetectionConfiguration.properties.CustomEmails - # - $.definitions.ApplicationInsightsComponentProactiveDetectionConfiguration.properties.LastUpdatedTime - # - $.definitions.ApplicationInsightsComponentProactiveDetectionConfiguration.properties.RuleDefinitions - # - $.definitions.ApplicationInsightsComponentProactiveDetectionConfiguration.properties.Name - # - $.definitions.ApplicationInsightsComponentProactiveDetectionConfiguration.properties.Name - # - $.definitions.ApplicationInsightsComponentWebTestLocation.properties.Tag - # - $.definitions.ApplicationInsightsComponentWebTestLocation.properties.DisplayName - # - $.definitions.ApplicationInsightsComponentFavorite.properties.UserId - # - $.definitions.ApplicationInsightsComponentFavorite.properties.IsGeneratedFromTemplate - # - $.definitions.ApplicationInsightsComponentFavorite.properties.Category - # - $.definitions.ApplicationInsightsComponentFavorite.properties.Tags - # - $.definitions.ApplicationInsightsComponentFavorite.properties.TimeModified - # - $.definitions.ApplicationInsightsComponentFavorite.properties.SourceType - # - $.definitions.ApplicationInsightsComponentFavorite.properties.FavoriteType - # - $.definitions.ApplicationInsightsComponentFavorite.properties.FavoriteId - # - $.definitions.ApplicationInsightsComponentFavorite.properties.Version - # - $.definitions.ApplicationInsightsComponentFavorite.properties.Config - # - $.definitions.ApplicationInsightsComponentFavorite.properties.Name - # - $.definitions.ApplicationInsightsComponentFeatureCapability.properties.MeterRateFrequency - # - $.definitions.ApplicationInsightsComponentFeatureCapability.properties.MeterId - # - $.definitions.ApplicationInsightsComponentFeatureCapability.properties.Unit - # - $.definitions.ApplicationInsightsComponentFeatureCapability.properties.Value - # - $.definitions.ApplicationInsightsComponentFeatureCapability.properties.Description - # - $.definitions.ApplicationInsightsComponentFeatureCapability.properties.Name - # - $.definitions.ApplicationInsightsComponentFeature.properties.SupportedAddonFeatures - # - $.definitions.ApplicationInsightsComponentFeature.properties.IsMainFeature - # - $.definitions.ApplicationInsightsComponentFeature.properties.Title - # - $.definitions.ApplicationInsightsComponentFeature.properties.Capabilities - # - $.definitions.ApplicationInsightsComponentFeature.properties.IsHidden - # - $.definitions.ApplicationInsightsComponentFeature.properties.ResouceId - # - $.definitions.ApplicationInsightsComponentFeature.properties.MeterRateFrequency - # - $.definitions.ApplicationInsightsComponentFeature.properties.MeterId - # - $.definitions.ApplicationInsightsComponentFeature.properties.FeatureName - # - $.definitions.ApplicationInsightsComponentAvailableFeatures.properties.Result - # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.ThrottleRate - # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.DailyCapResetTime - # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.DailyCap - # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.TrackingType - # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.ApiAccessLevel - # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.SupportExportData - # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.BurstThrottlePolicy - # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.MetadataClass - # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.LiveStreamMetrics - # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.ApplicationMap - # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.WorkItemIntegration - # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.PowerBIIntegration - # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.OpenSchema - # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.ProactiveDetection - # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.AnalyticsIntegration - # - $.definitions.ApplicationInsightsComponentFeatureCapabilities.properties.MultipleStepWebTest - # - $.definitions.ApplicationInsightsComponentAnalyticsItem.properties.Id - # - $.definitions.ApplicationInsightsComponentAnalyticsItem.properties.Name - # - $.definitions.ApplicationInsightsComponentAnalyticsItem.properties.Content - # - $.definitions.ApplicationInsightsComponentAnalyticsItem.properties.Version - # - $.definitions.ApplicationInsightsComponentAnalyticsItem.properties.Scope - # - $.definitions.ApplicationInsightsComponentAnalyticsItem.properties.Type - # - $.definitions.ApplicationInsightsComponentAnalyticsItem.properties.TimeCreated - # - $.definitions.ApplicationInsightsComponentAnalyticsItem.properties.TimeModified - # - $.definitions.ApplicationInsightsComponentAnalyticsItem.properties.Properties - + reason: 'This api was existing there from 2015, it will break existing client if we change the name' - suppress: R2066 reason: There are a bug in this rule. "ExportConfigurations_Create" is a valid operation id. + - suppress: OBJECT_ADDITIONAL_PROPERTIES + where: $.definitions.Workbook + from: workbooks_API.json + reason: 'This property is already a part of our API, so we cannot remove it' + - suppress: READONLY_PROPERTY_NOT_ALLOWED_IN_REQUEST + where: $.definitions.Resource.properties.name + from: types.json + reason: 'This property is already a part of our API, cannot remove it' + - suppress: READONLY_PROPERTY_NOT_ALLOWED_IN_REQUEST + where: $.definitions.Resource.properties.id + from: types.json + reason: 'This property is already a part of our API, cannot remove it' + - suppress: READONLY_PROPERTY_NOT_ALLOWED_IN_REQUEST + where: $.definitions.WorkbookResource.properties.id + from: workbooks_API.json + reason: 'This property is already a part of our API, cannot remove it' + - suppress: READONLY_PROPERTY_NOT_ALLOWED_IN_REQUEST + where: $.definitions.WorkbookResource.properties.name + from: workbooks_API.json + reason: 'This property is already a part of our API, cannot remove it' ``` ### Tag: package-preview-2020-06-only These settings apply only when `--tag=package-preview-2020-06-only` is specified on the command line. -```yaml $(tag) == 'package-preview-2020-06-only' +``` yaml $(tag) == 'package-preview-2020-06-only' input-file: - Microsoft.Insights/preview/2020-06-02-preview/livetoken_API.json ``` @@ -251,7 +112,7 @@ input-file: These settings apply only when `--tag=package-preview-2020-06` is specified on the command line. -```yaml $(tag) == 'package-preview-2020-06' +``` yaml $(tag) == 'package-preview-2020-06' input-file: - Microsoft.Insights/stable/2015-05-01/aiOperations_API.json - Microsoft.Insights/stable/2015-05-01/componentAnnotations_API.json @@ -274,10 +135,11 @@ input-file: These settings apply only when `--tag=package-preview-2020-02` is specified on the command line. -```yaml $(tag) == 'package-preview-2020-02' +``` yaml $(tag) == 'package-preview-2020-02' input-file: - Microsoft.Insights/preview/2020-02-10-preview/WebTestResults_API.json ``` + ### Tag: package-2015-05 These settings apply only when `--tag=package-2015-05` is specified on the command line. @@ -486,31 +348,32 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/Microsoft.Insights/preview/2020-02-10-preview/WebTestResults_API.json + - $(this-folder)/Microsoft.Insights/preview/2020-06-02-preview/livetoken_API.json - $(this-folder)/Microsoft.Insights/stable/2015-05-01/aiOperations_API.json - $(this-folder)/Microsoft.Insights/stable/2015-05-01/componentAnnotations_API.json - $(this-folder)/Microsoft.Insights/stable/2015-05-01/componentApiKeys_API.json - $(this-folder)/Microsoft.Insights/stable/2015-05-01/componentContinuousExport_API.json - $(this-folder)/Microsoft.Insights/stable/2015-05-01/componentFeaturesAndPricing_API.json - $(this-folder)/Microsoft.Insights/stable/2015-05-01/componentProactiveDetection_API.json - - $(this-folder)/Microsoft.Insights/stable/2015-05-01/components_API.json - $(this-folder)/Microsoft.Insights/stable/2015-05-01/componentWorkItemConfigs_API.json - $(this-folder)/Microsoft.Insights/stable/2015-05-01/favorites_API.json - $(this-folder)/Microsoft.Insights/stable/2015-05-01/webTestLocations_API.json - $(this-folder)/Microsoft.Insights/stable/2015-05-01/webTests_API.json - $(this-folder)/Microsoft.Insights/stable/2015-05-01/analyticsItems_API.json - $(this-folder)/Microsoft.Insights/stable/2015-05-01/workbooks_API.json + - $(this-folder)/Microsoft.Insights/preview/2018-05-01-preview/components_API.json + - $(this-folder)/Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json + - $(this-folder)/Microsoft.Insights/preview/2020-02-10-preview/WebTestResults_API.json + - $(this-folder)/Microsoft.Insights/stable/2015-05-01/components_API.json - $(this-folder)/Microsoft.Insights/preview/2017-10-01/eaSubscriptionMigration_API.json - $(this-folder)/Microsoft.Insights/preview/2017-10-01/componentFeaturesAndPricing_API.json - $(this-folder)/Microsoft.Insights/preview/2018-06-17-preview/workbooks_API.json - $(this-folder)/Microsoft.Insights/preview/2019-10-17-preview/workbookTemplates_API.json - $(this-folder)/Microsoft.Insights/preview/2018-05-01-preview/componentProactiveDetection_API.json - - $(this-folder)/Microsoft.Insights/preview/2018-05-01-preview/components_API.json - $(this-folder)/Microsoft.Insights/preview/2019-09-01-preview/QueryPackQueries_API.json - $(this-folder)/Microsoft.Insights/preview/2019-09-01-preview/QueryPacks_API.json - $(this-folder)/Microsoft.Insights/preview/2020-02-02-preview/components_API.json - - $(this-folder)/Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json - - $(this-folder)/Microsoft.Insights/preview/2020-06-02-preview/livetoken_API.json + ``` If there are files that should not be in the `all-api-versions` set, diff --git a/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/attestation.json b/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/attestation.json index 9a6aff8f2069..5e016060e568 100644 --- a/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/attestation.json +++ b/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/attestation.json @@ -494,9 +494,6 @@ "StatusResult": { "type": "object", "description": "Status of attestation service.", - "required": [ - "status" - ], "properties": { "trustModel": { "type": "string", diff --git a/specification/attestation/resource-manager/readme.md b/specification/attestation/resource-manager/readme.md index f6640479ed02..44902dfd9d1a 100644 --- a/specification/attestation/resource-manager/readme.md +++ b/specification/attestation/resource-manager/readme.md @@ -76,6 +76,9 @@ csharp: See configuration in [readme.go.md](./readme.go.md) +## Trenton + +See configuration in [readme.trenton.md](./readme.trenton.md) ## Multi-API/Profile support for AutoRest v3 generators diff --git a/specification/attestation/resource-manager/readme.trenton.md b/specification/attestation/resource-manager/readme.trenton.md new file mode 100644 index 000000000000..3e0da01d7f39 --- /dev/null +++ b/specification/attestation/resource-manager/readme.trenton.md @@ -0,0 +1,21 @@ + +## trenton + +These settings apply only when `--trenton` is specified on the command line. + +``` yaml $(trenton) +trenton: + cli-name: attestation + package-name: attestation +clear-output-folder: true +output-folder: $(trenton-output-folder)/attestation +overrides: + - where: + property: "x5C" + set: + - GoFieldName: X5c + - where: + property: "/creationParams/properties" + set: + - GoFieldName: Properties +``` diff --git a/specification/authorization/resource-manager/readme.md b/specification/authorization/resource-manager/readme.md index f87f85d6af53..575b2c656dde 100644 --- a/specification/authorization/resource-manager/readme.md +++ b/specification/authorization/resource-manager/readme.md @@ -254,17 +254,18 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Authorization/preview/2015-06-01/authorization-ClassicAdminCalls.json + - $(this-folder)/Microsoft.Authorization/stable/2015-07-01/authorization-ElevateAccessCalls.json + - $(this-folder)/Microsoft.Authorization/preview/2018-01-01-preview/authorization-ProviderOperationsCalls.json + - $(this-folder)/Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleDefinitionsCalls.json + - $(this-folder)/Microsoft.Authorization/preview/2018-07-01-preview/authorization-DenyAssignmentGetCalls.json + - $(this-folder)/Microsoft.Authorization/preview/2020-04-01-preview/authorization-RoleAssignmentsCalls.json - $(this-folder)/Microsoft.Authorization/stable/2015-07-01/authorization-RoleDefinitionsCalls.json - $(this-folder)/Microsoft.Authorization/stable/2015-07-01/authorization-ProviderOperationsCalls.json - - $(this-folder)/Microsoft.Authorization/stable/2015-07-01/authorization-ElevateAccessCalls.json - $(this-folder)/Microsoft.Authorization/stable/2015-07-01/authorization-RoleAssignmentsCalls.json - $(this-folder)/Microsoft.Authorization/stable/2015-07-01/authorization-ClassicAdminCalls.json - - $(this-folder)/Microsoft.Authorization/preview/2015-06-01/authorization-ClassicAdminCalls.json - $(this-folder)/Microsoft.Authorization/preview/2017-10-01-preview/authorization-RoleAssignmentsCalls.json - - $(this-folder)/Microsoft.Authorization/preview/2018-01-01-preview/authorization-ProviderOperationsCalls.json - $(this-folder)/Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleAssignmentsCalls.json - - $(this-folder)/Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleDefinitionsCalls.json - - $(this-folder)/Microsoft.Authorization/preview/2018-07-01-preview/authorization-DenyAssignmentGetCalls.json - $(this-folder)/Microsoft.Authorization/preview/2018-09-01-preview/authorization-RoleAssignmentsCalls.json ``` diff --git a/specification/azsadmin/resource-manager/compute/readme.md b/specification/azsadmin/resource-manager/compute/readme.md index 2bed47d25cc2..6e2d95dd3738 100644 --- a/specification/azsadmin/resource-manager/compute/readme.md +++ b/specification/azsadmin/resource-manager/compute/readme.md @@ -69,3 +69,33 @@ input-file: - Microsoft.Compute.Admin/preview/2018-07-30-preview/Disks.json - Microsoft.Compute.Admin/preview/2018-07-30-preview/DiskMigrationJobs.json ``` + +## 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.Compute.Admin/preview/2015-12-01-preview/Compute.json + - $(this-folder)/Microsoft.Compute.Admin/preview/2015-12-01-preview/PlatformImages.json + - $(this-folder)/Microsoft.Compute.Admin/preview/2018-02-09/Quotas.json + - $(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 + +``` + +If there are files that should not be in the `all-api-versions` set, +uncomment the `exclude-file` section below and add the file paths. + +``` yaml $(tag) == 'all-api-versions' +#exclude-file: +# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +``` + diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/Deployment.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/Deployment.json new file mode 100644 index 000000000000..4d71f0cb71c7 --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/Deployment.json @@ -0,0 +1,236 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-07-01", + "title": "DeploymentAdminClient", + "description": "Deployment Admin Client." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.Deployment.Admin/operations": { + "get": { + "x-ms-examples": { + "Returns the list of supported REST operations.": { + "$ref": "./examples/Operations/List.json" + } + }, + "description": "Returns the list of supported REST operations.", + "tags": [ + "Deployment" + ], + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "Resource": { + "description": "Object model of azure resource manager base.", + "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 + }, + "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 + } + } + }, + "JTokenString": { + "description": "Error information", + "type": "object", + "properties": { + "value": { + "description": "Parameters as JToken string", + "type": "string" + } + } + }, + "Operation": { + "description": "Describes the supported REST operation.", + "properties": { + "name": { + "description": "The name of the operation being performed on this particular object. This name should match the name that appears in RBAC or the event service.", + "type": "string" + }, + "display": { + "description": "Contains the localized display information for this particular operation or action.", + "$ref": "#/definitions/Display" + }, + "origin": { + "description": "Origin for the operation. Eg. User, System", + "type": "string" + } + } + }, + "Display": { + "description": "Contains the localized display information for this particular operation or 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" + }, + "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" + }, + "operation": { + "description": "The localized, friendly name for the operation. Use the name as it will displayed to the user.", + "type": "string" + }, + "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" + } + } + }, + "OperationList": { + "description": "List of Operations", + "properties": { + "value": { + "description": "Array of operations", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "URI to the next page of operations.", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Subscription credentials that uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", + "required": true, + "type": "string" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "Client API Version.", + "required": true, + "type": "string", + "default": "2018-07-01" + }, + "LocationParameter": { + "description": "Location of the resource.", + "name": "location", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "default": "2018-07-01" + }, + "ProductIdParameter": { + "name": "productId", + "in": "path", + "description": "The product identifier.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "PackageIdParameter": { + "name": "packageId", + "in": "path", + "description": "The package identifier.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Authorization uses an Azure Active Directory OAuth2 flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/FileContainer.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/FileContainer.json new file mode 100644 index 000000000000..deb9b2f4ff18 --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/FileContainer.json @@ -0,0 +1,341 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-07-01", + "title": "DeploymentAdminClient", + "description": "Deployment Admin Client." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/global/fileContainers": { + "get": { + "x-ms-examples": { + "Return file containers list.": { + "$ref": "./examples/FileContainer/List.json" + } + }, + "description": "Returns an array of file containers.", + "tags": [ + "FileContainers" + ], + "operationId": "FileContainers_List", + "parameters": [ + { + "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Deployment.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FileContainersList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/global/fileContainers/{fileContainerId}": { + "get": { + "x-ms-examples": { + "Return the file container details.": { + "$ref": "./examples/FileContainer/Get.json" + } + }, + "description": "Retrieves the specific file container details.", + "tags": [ + "FileContainers" + ], + "operationId": "FileContainers_Get", + "parameters": [ + { + "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/FileContainerIdParameter" + }, + { + "$ref": "Deployment.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FileContainer" + } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } + } + } + }, + "put": { + "x-ms-examples": { + "Creates a new file container.": { + "$ref": "./examples/FileContainer/Create.json" + } + }, + "description": "Creates a new file container.", + "tags": [ + "FileContainers" + ], + "operationId": "FileContainers_Create", + "parameters": [ + { + "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/FileContainerParameters" + }, + { + "$ref": "Deployment.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FileContainerIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/FileContainer" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "delete": { + "x-ms-examples": { + "Deletes specified file container.": { + "$ref": "examples/FileContainer/Delete.json" + } + }, + "tags": [ + "FileContainers" + ], + "summary": "Deletes specified file container.", + "description": "Delete an existing file container.", + "operationId": "FileContainers_Delete", + "parameters": [ + { + "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/FileContainerIdParameter" + }, + { + "$ref": "Deployment.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } + } + } + } + } + }, + "definitions": { + "FileContainer": { + "type": "object", + "description": "File container entity.", + "properties": { + "properties": { + "description": "File Container properties", + "$ref": "#/definitions/FileContainerAdminProperties", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "Deployment.json#/definitions/Resource" + } + ] + }, + "FileContainerAdminProperties": { + "description": "File Container Properties.", + "type": "object", + "properties": { + "fileContainerId": { + "description": "File container resource identifier containing product manifest.", + "$ref": "#/definitions/FileContainerId" + }, + "sourceUri": { + "description": "The remote file location. This is write-only property, DRP never returns it back to a user.", + "$ref": "#/definitions/SourceUri" + }, + "uri": { + "description": "The file or container Uri. This is read-only property; a user cannot set it.", + "type": "string" + }, + "postCopyAction": { + "description": "Specifies the file post copy action.", + "$ref": "#/definitions/PostCopyAction" + }, + "error": { + "description": "The error response message.", + "$ref": "#/definitions/ErrorInfo" + }, + "provisioningState": { + "description": "Provisioning state of the resource.", + "type": "string" + } + } + }, + "FileContainersList": { + "description": "List of file containers.", + "properties": { + "value": { + "description": "List of file containers.", + "type": "array", + "items": { + "$ref": "#/definitions/FileContainer" + } + }, + "nextLink": { + "description": "Continuation token.", + "type": "string" + } + } + }, + "ErrorInfo": { + "description": "Extended Error Information.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string" + }, + "message": { + "description": "The error message.", + "type": "string" + }, + "details": { + "description": "The detailed error messages.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorInfo" + } + } + } + }, + "PostCopyAction": { + "description": "Specifies the file post copy action.", + "type": "string", + "enum": [ + "None", + "Unzip" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "PostCopyAction" + } + }, + "SourceUri": { + "description": "Specifies The remote file location.", + "type": "string" + }, + "FileContainerId": { + "description": "File container resource identifier containing product manifest.", + "type": "string" + }, + "FileContainerParameters": { + "description": "Parameters for creating a new file container.", + "type": "object", + "properties": { + "properties": { + "description": "Specifies the file container body", + "$ref": "#/definitions/FileContainerBody" + } + } + }, + "FileContainerBody": { + "description": "Body for creating a new file container.", + "type": "object", + "properties": { + "postCopyAction": { + "description": "Specifies the file post copy action.", + "$ref": "#/definitions/PostCopyAction" + }, + "sourceUri": { + "description": "Specifies The remote file location.", + "$ref": "#/definitions/SourceUri" + } + } + } + }, + "parameters": { + "FileContainerIdParameter": { + "description": "The file container identifier.", + "name": "fileContainerId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "FileContainerParameters": { + "description": "The parameters required to create a new file container.", + "name": "fileContainerParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FileContainerParameters" + }, + "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/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/ProductPackage.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/ProductPackage.json new file mode 100644 index 000000000000..1434a2709d3c --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/ProductPackage.json @@ -0,0 +1,355 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-07-01", + "title": "DeploymentAdminClient", + "description": "Deployment Admin Client." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.Deployment.Admin/operations": { + "get": { + "x-ms-examples": { + "Returns the list of supported REST operations.": { + "$ref": "./examples/Operations/List.json" + } + }, + "description": "Returns the list of supported REST operations.", + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "Deployment.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "Deployment.json#/definitions/OperationList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/global/productPackages": { + "get": { + "x-ms-examples": { + "Return product packages list.": { + "$ref": "./examples/ProductPackage/List.json" + } + }, + "description": "Returns an array of product packages.", + "tags": [ + "ProductPackages" + ], + "operationId": "ProductPackages_List", + "parameters": [ + { + "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Deployment.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProductPackagesList" + } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/global/productPackages/{packageId}": { + "get": { + "x-ms-examples": { + "Return the product package details.": { + "$ref": "./examples/ProductPackage/Get.json" + } + }, + "description": "Retrieves the specific product package details.", + "tags": [ + "ProductPackages" + ], + "operationId": "ProductPackages_Get", + "parameters": [ + { + "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Deployment.json#/parameters/PackageIdParameter" + }, + { + "$ref": "Deployment.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProductPackage" + } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } + } + } + }, + "put": { + "x-ms-examples": { + "Creates a new product package.": { + "$ref": "./examples/ProductPackage/Create.json" + } + }, + "description": "Creates a new product package.", + "tags": [ + "ProductPackages" + ], + "operationId": "ProductPackages_Create", + "parameters": [ + { + "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Deployment.json#/parameters/PackageIdParameter" + }, + { + "$ref": "#/parameters/ProductPackageParameters" + }, + { + "$ref": "Deployment.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProductPackage" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "x-ms-examples": { + "Removes a product package.": { + "$ref": "./examples/ProductPackage/Delete.json" + } + }, + "description": "Deletes a product package.", + "tags": [ + "ProductPackages" + ], + "operationId": "ProductPackages_Delete", + "parameters": [ + { + "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Deployment.json#/parameters/PackageIdParameter" + }, + { + "$ref": "Deployment.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } + } + }, + "x-ms-long-running-operation": true + } + } + }, + "definitions": { + "ProductPackage": { + "description": "Properties for a product package.", + "type": "object", + "properties": { + "properties": { + "description": "Properties of a product package.", + "$ref": "#/definitions/ProductPackageProperties", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "Deployment.json#/definitions/Resource" + } + ] + }, + "ProductPackagesList": { + "description": "List of product packages.", + "properties": { + "value": { + "description": "List of product packages.", + "type": "array", + "items": { + "$ref": "#/definitions/ProductPackage" + } + }, + "nextLink": { + "description": "Continuation Token.", + "type": "string" + } + } + }, + "ProductPackageProperties": { + "type": "object", + "description": "Properties for Product package.", + "properties": { + "fileContainerId": { + "description": "File container resource identifier containing product manifest.", + "$ref": "#/definitions/FileContainerId" + }, + "isDeployable": { + "description": "Value indicating whether the package is applicable for deployment.", + "type": "boolean" + }, + "isUpdatable": { + "description": "Value indicating whether the package is applicable for update.", + "type": "boolean" + }, + "productDeploymentId": { + "description": "The identifier of product deployment; null if this version is not installed.", + "type": "string" + }, + "provisioningState": { + "description": "Provisioning state of the resource.", + "type": "string" + } + } + }, + "FileContainerId": { + "description": "File container resource identifier containing product manifest.", + "type": "string" + }, + "ProductProperties": { + "description": "Additional properties of the product", + "type": "object", + "properties": { + "version": { + "description": "The version of the product", + "type": "string" + } + } + }, + "ProductLink": { + "description": "Link to a product.", + "type": "object", + "properties": { + "displayName": { + "description": "Displayed name of product.", + "type": "string" + }, + "uri": { + "description": "URI to product.", + "type": "string" + } + } + }, + "ProductLinks": { + "description": "List of product links.", + "type": "array", + "items": { + "$ref": "#/definitions/ProductLink" + } + }, + "ProductPackageParameters": { + "description": "Parameters for creating a new product package.", + "type": "object", + "properties": { + "properties": { + "description": "Specifies the product package", + "$ref": "#/definitions/ProductPackageBody" + } + } + }, + "ProductPackageBody": { + "description": "Body for creating a new product package.", + "type": "object", + "properties": { + "fileContainerId": { + "description": "Specifies the file container.", + "$ref": "#/definitions/FileContainerId" + } + } + } + }, + "parameters": { + "ProductPackageParameters": { + "description": "The parameters required to create a new product package.", + "name": "ProductPackageParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ProductPackageParameters" + }, + "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/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/FileContainer/Create.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/FileContainer/Create.json new file mode 100644 index 000000000000..43bbdc5c5942 --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/FileContainer/Create.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "be8b2e19-7f92-4644-b808-a18283aebb01", + "location": "global", + "api-version": "2018-07-01", + "fileContainerId": "Microsoft.NullProvider.1.1", + "fileContainerParameters": { + "properties": { + "sourceUri": "https://deploymentproviderbvts.blob.redmond.ext-n22r1708.masd.stbtest.microsoft.com/temp/Microsoft.NullProvider.1.1.zip", + "postCopyAction": "Unzip" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/be8b2e19-7f92-4644-b808-a18283aebb01/providers/Microsoft.Deployment.Admin/locations/global/fileContainers/Microsoft.NullProvider.1.1", + "name": "global/Microsoft.NullProvider.1.1", + "type": "Microsoft.Deployment.Admin/locations/fileContainers", + "location": "global", + "properties": { + "postCopyAction": "Unzip", + "provisioningState": "Creating" + } + } + }, + "202": {} + } +} diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/FileContainer/Delete.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/FileContainer/Delete.json new file mode 100644 index 000000000000..fb79b908e537 --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/FileContainer/Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "be8b2e19-7f92-4644-b808-a18283aebb01", + "location": "global", + "api-version": "2018-07-01", + "fileContainerId": "Microsoft.NullProvider.1.1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/FileContainer/Get.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/FileContainer/Get.json new file mode 100644 index 000000000000..b10ce0aa7c22 --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/FileContainer/Get.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "be8b2e19-7f92-4644-b808-a18283aebb01", + "location": "global", + "api-version": "2018-07-01", + "fileContainerId": "Microsoft.NullProvider.1.1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/be8b2e19-7f92-4644-b808-a18283aebb01/providers/Microsoft.Deployment.Admin/locations/global/fileContainers/Microsoft.NullProvider.1.1", + "name": "global/Microsoft.NullProvider.1.1", + "type": "Microsoft.Deployment.Admin/locations/fileContainers", + "location": "global", + "properties": { + "postCopyAction": "Unzip", + "uri": "https://deploymentrp.blob.redmond.ext-n22r1708.masd.stbtest.microsoft.com/msdpfilecontainer-cb72641657134ed79ffeb632a58a671e/", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/FileContainer/List.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/FileContainer/List.json new file mode 100644 index 000000000000..8c80323e8199 --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/FileContainer/List.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "be8b2e19-7f92-4644-b808-a18283aebb01", + "location": "global", + "api-version": "2018-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/be8b2e19-7f92-4644-b808-a18283aebb01/providers/Microsoft.Deployment.Admin/locations/global/fileContainers/Microsoft.NullProvider.1.1", + "name": "global/Microsoft.NullProvider.1.1", + "type": "Microsoft.Deployment.Admin/locations/fileContainers", + "location": "global", + "properties": { + "postCopyAction": "Unzip", + "uri": "https://deploymentrp.blob.redmond.ext-n22r1708.masd.stbtest.microsoft.com/msdpfilecontainer-cb72641657134ed79ffeb632a58a671e/", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/Operations/List.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/Operations/List.json new file mode 100644 index 000000000000..0f8927a3d630 --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/Operations/List.json @@ -0,0 +1,159 @@ +{ + "parameters": { + "api-version": "2018-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Deployment.Admin/locations/fileContainers/read", + "display": { + "provider": "Microsoft Deployment Provider", + "resource": "File Container", + "operation": "List/Get File Container(s)", + "description": "Returns the list of file containers or gets properties for the specified file container." + } + }, + { + "name": "Microsoft.Deployment.Admin/locations/fileContainers/write", + "display": { + "provider": "Microsoft Deployment Provider", + "resource": "File Container", + "operation": "Create/Update File Container", + "description": "Creates or updates a file container." + } + }, + { + "name": "Microsoft.Deployment.Admin/locations/fileContainers/delete", + "display": { + "provider": "Microsoft Deployment Provider", + "resource": "File Container", + "operation": "Delete File Container", + "description": "Deletes an existing file container." + } + }, + { + "name": "Microsoft.Deployment.Admin/locations/operationresults/read", + "display": { + "provider": "Microsoft Deployment Provider", + "resource": "Operation Result", + "operation": "Poll Asynchronous Operation", + "description": "Polls the status of an asynchronous operation." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Deployment.Admin/Operations/read", + "display": { + "provider": "Microsoft Deployment Provider", + "resource": "Operation", + "operation": "List Supported Operations", + "description": "Returns the list of supported operations." + }, + "origin": "user,system" + }, + { + "name": "Microsoft.Deployment.Admin/locations/productDeployments/read", + "display": { + "provider": "Microsoft Deployment Provider", + "resource": "Product Deployment", + "operation": "List/Get Product Deployment(s)", + "description": "Returns the list of product deployments or gets properties for the specified product deployment." + } + }, + { + "name": "Microsoft.Deployment.Admin/locations/productDeployments/bootstrap/action", + "display": { + "provider": "Microsoft Deployment Provider", + "resource": "Product Deployment", + "operation": "Execute Bootstrap Deployment Phase", + "description": "Executes 'bootstrap' deployment phase." + } + }, + { + "name": "Microsoft.Deployment.Admin/locations/productDeployments/deploy/action", + "display": { + "provider": "Microsoft Deployment Provider", + "resource": "Product Deployment", + "operation": "Execute Provision Deployment Phase", + "description": "Executes 'provision' deployment phase." + } + }, + { + "name": "Microsoft.Deployment.Admin/locations/productDeployments/remove/action", + "display": { + "provider": "Microsoft Deployment Provider", + "resource": "Product Deployment", + "operation": "Remove Installed Product", + "description": "Removes installed product." + } + }, + { + "name": "Microsoft.Deployment.Admin/locations/productDeployments/setexternalaccess/action", + "display": { + "provider": "Microsoft Deployment Provider", + "resource": "Product Deployment", + "operation": "Set External Access", + "description": "Enables or disables operator's access to product subscription." + } + }, + { + "name": "Microsoft.Deployment.Admin/locations/productDeployments/secrets/read", + "display": { + "provider": "Microsoft Deployment Provider", + "resource": "Secret", + "operation": "List/Get Secret(s)", + "description": "Returns the list of secrets or gets properties for the specified secret." + } + }, + { + "name": "Microsoft.Deployment.Admin/locations/productDeployments/secrets/import/action", + "display": { + "provider": "Microsoft Deployment Provider", + "resource": "Secret", + "operation": "Import Secret Value", + "description": "Imports a new secret value." + } + }, + { + "name": "Microsoft.Deployment.Admin/locations/productDeployments/secrets/validateImport/action", + "display": { + "provider": "Microsoft Deployment Provider", + "resource": "Secret", + "operation": "Validate Import", + "description": "Validates input for the import action." + } + }, + { + "name": "Microsoft.Deployment.Admin/locations/productPackages/read", + "display": { + "provider": "Microsoft Deployment Provider", + "resource": "Product Package", + "operation": "List/Get Product Package(s)", + "description": "Returns the list of product packages or gets properties for the specified product package." + } + }, + { + "name": "Microsoft.Deployment.Admin/locations/productPackages/write", + "display": { + "provider": "Microsoft Deployment Provider", + "resource": "Product Package", + "operation": "Create/Update Product Package", + "description": "Creates or updates a product package." + } + }, + { + "name": "Microsoft.Deployment.Admin/locations/productPackages/delete", + "display": { + "provider": "Microsoft Deployment Provider", + "resource": "Product Package", + "operation": "Delete Product Package", + "description": "Deletes an existing product package." + } + } + ] + } + } + } +} diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/ProductPackage/Create.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/ProductPackage/Create.json new file mode 100644 index 000000000000..0a762d6b6146 --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/ProductPackage/Create.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "be8b2e19-7f92-4644-b808-a18283aebb01", + "location": "global", + "api-version": "2018-07-01", + "packageId": "Microsoft.NullProvider.1.1", + "ProductPackageParameters": { + "properties": { + "fileContainerId": "Microsoft.NullProvider.1.1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/be8b2e19-7f92-4644-b808-a18283aebb01/providers/Microsoft.Deployment.Admin/locations/global/productPackages/Microsoft.NullProvider.1.1", + "name": "global/Microsoft.NullProvider.1.1", + "type": "Microsoft.Deployment.Admin/locations/productPackages", + "properties": { + "fileContainerId": "Microsoft.NullProvider.1.1", + "isDeployable": true, + "isUpdatable": true, + "provisioningState": "Succeeded" + } + } + }, + "202": {} + } +} diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/ProductPackage/Delete.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/ProductPackage/Delete.json new file mode 100644 index 000000000000..76aaf0a95a96 --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/ProductPackage/Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "be8b2e19-7f92-4644-b808-a18283aebb01", + "location": "global", + "api-version": "2018-07-01", + "packageId": "Microsoft.NullProvider.1.1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/ProductPackage/Get.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/ProductPackage/Get.json new file mode 100644 index 000000000000..7055b9e4b4a2 --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/ProductPackage/Get.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "be8b2e19-7f92-4644-b808-a18283aebb01", + "location": "global", + "api-version": "2018-07-01", + "packageId": "Microsoft.NullProvider.1.1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/be8b2e19-7f92-4644-b808-a18283aebb01/providers/Microsoft.Deployment.Admin/locations/global/productPackages/Microsoft.NullProvider.1.1", + "name": "global/Microsoft.NullProvider.1.1", + "type": "Microsoft.Deployment.Admin/locations/productPackages", + "properties": { + "fileContainerId": "Microsoft.NullProvider.1.1", + "isDeployable": true, + "isUpdatable": true, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/ProductPackage/List.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/ProductPackage/List.json new file mode 100644 index 000000000000..c8e773cca19d --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2018-07-01/examples/ProductPackage/List.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "be8b2e19-7f92-4644-b808-a18283aebb01", + "location": "global", + "api-version": "2018-07-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/be8b2e19-7f92-4644-b808-a18283aebb01/providers/Microsoft.Deployment.Admin/locations/global/productPackages/Microsoft.NullProvider.1.1", + "name": "global/Microsoft.NullProvider.1.1", + "type": "Microsoft.Deployment.Admin/locations/productPackages", + "properties": { + "fileContainerId": "Microsoft.NullProvider.1.1", + "isDeployable": true, + "isUpdatable": true, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlan.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlan.json index f374728e2b99..fb687b4690f2 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlan.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlan.json @@ -42,6 +42,12 @@ "schema": { "$ref": "#/definitions/ActionPlanList" } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } }, "x-ms-pageable": { @@ -79,8 +85,11 @@ "$ref": "#/definitions/ActionPlanResourceEntity" } }, - "404": { - "description": "NOT FOUND" + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } } } diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlanOperation.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlanOperation.json index 574331ae41c9..f88251943ac5 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlanOperation.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlanOperation.json @@ -45,6 +45,12 @@ "schema": { "$ref": "#/definitions/ActionPlanOperationsList" } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } }, "x-ms-pageable": { @@ -85,8 +91,11 @@ "$ref": "#/definitions/ActionPlanOperationResourceEntity" } }, - "404": { - "description": "NOT FOUND" + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } } } diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlanOperationAttempt.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlanOperationAttempt.json new file mode 100644 index 000000000000..3e588278ebbc --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlanOperationAttempt.json @@ -0,0 +1,139 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-01-01", + "title": "DeploymentAdminClient", + "description": "Deployment Admin Client." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/{location}/actionplans/{planId}/operations/{operationId}/attempts": { + "get": { + "x-ms-examples": { + "Gets the information about Action Plan operation attempts.": { + "$ref": "./examples/ActionPlanOperationAttempt/Get.json" + } + }, + "description": "Returns the information about action plan operation attempt.", + "tags": [ + "ActionPlanOperationAttempt" + ], + "operationId": "ActionPlanOperationAttempt_List", + "parameters": [ + { + "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Deployment.json#/parameters/LocationParameter" + }, + { + "$ref": "#/parameters/PlanIdParameter" + }, + { + "$ref": "#/parameters/OperationIdParameter" + }, + { + "$ref": "Deployment.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationAttemptResult" + } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } + } + } + } + } + }, + "definitions": { + "OperationAttemptResult": { + "description": "Result of an Operation Attempt.", + "type": "object", + "properties": { + "properties": { + "description": "Result of an Operation Attempt.", + "$ref": "#/definitions/OperationAttemptProperties", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "Deployment.json#/definitions/Resource" + } + ] + }, + "OperationAttemptProperties": { + "type": "object", + "description": "Operation Attempt Properties.", + "properties": { + "startTime": { + "description": "The deployment start time", + "type": "string", + "format": "date-time" + }, + "endTime": { + "description": "The deployment end time", + "type": "string", + "format": "date-time" + }, + "provisioningState": { + "description": "Provisioning state of the resource.", + "type": "string" + } + } + } + }, + "parameters": { + "PlanIdParameter": { + "description": "Identifier of the action plan.", + "name": "planId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "OperationIdParameter": { + "description": "Identifier of the action plan operation.", + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Authorization uses an Azure Active Directory OAuth2 flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/Deployment.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/Deployment.json index 9dc085092803..3f662c28d526 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/Deployment.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/Deployment.json @@ -75,20 +75,36 @@ "x-ms-azure-resource": true }, "ExtendedErrorInfo": { - "description": "Error information", "type": "object", + "description": "Error response.", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDefinition", + "description": "The error details." + } + } + }, + "ErrorDefinition": { + "type": "object", + "description": "Error definition.", "properties": { "code": { - "description": "Error Code", - "type": "string" + "description": "Service specific error code which serves as the substatus for the HTTP error code.", + "type": "string", + "readOnly": true }, "message": { - "description": "Error Message", - "type": "string" + "description": "Description of the error.", + "type": "string", + "readOnly": true }, "details": { - "description": "Error message details", - "$ref": "#/definitions/ExtendedErrorInfo" + "description": "Internal error details.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDefinition" + }, + "readOnly": true } } }, @@ -189,6 +205,14 @@ "required": true, "type": "string", "x-ms-parameter-location": "method" + }, + "PackageIdParameter": { + "name": "packageId", + "in": "path", + "description": "The package identifier.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" } }, "securityDefinitions": { diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/FileContainer.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/FileContainer.json index a8885fc7244d..5b823a4c7110 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/FileContainer.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/FileContainer.json @@ -79,8 +79,11 @@ "$ref": "#/definitions/FileContainer" } }, - "404": { - "description": "Not Found" + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } } }, @@ -155,8 +158,14 @@ "200": { "description": "OK" }, - "404": { - "description": "Not found" + "204": { + "description": "No Content" + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } } } @@ -269,6 +278,16 @@ "FileContainerParameters": { "description": "Parameters for creating a new file container.", "type": "object", + "properties": { + "properties": { + "description": "Specifies the file container body", + "$ref": "#/definitions/FileContainerBody" + } + } + }, + "FileContainerBody": { + "description": "Body for creating a new file container.", + "type": "object", "properties": { "postCopyAction": { "description": "Specifies the file post copy action.", diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/Locations.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/Locations.json new file mode 100644 index 000000000000..039a230e26ef --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/Locations.json @@ -0,0 +1,163 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-01-01", + "title": "DeploymentAdminClient", + "description": "Deployment Admin Client." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/global": { + "get": { + "x-ms-examples": { + "Gets the location": { + "$ref": "./examples/Locations/Get.json" + } + }, + "description": "Gets the location", + "tags": [ + "Locations" + ], + "operationId": "Locations_Get", + "parameters": [ + { + "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Deployment.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LocationsResourceEntity" + } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations": { + "get": { + "x-ms-examples": { + "Gets the list of locations": { + "$ref": "./examples/Locations/List.json" + } + }, + "description": "Gets the list of locations", + "tags": [ + "Locations" + ], + "operationId": "Locations_List", + "parameters": [ + { + "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Deployment.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LocationList" + } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "LocationList": { + "description": "List of locations", + "properties": { + "value": { + "description": "Array of locations.", + "type": "array", + "items": { + "$ref": "#/definitions/LocationsResourceEntity" + } + }, + "nextLink": { + "type": "string", + "description": "Continuation token" + } + } + }, + "LocationsResourceEntity": { + "type": "object", + "description": "Location Resource Entity", + "properties": { + "properties": { + "description": "Location Properties", + "$ref": "#/definitions/LocationAdminProperties", + "x-ms-client-flatten": true + }, + "eTag": { + "description": "Entity tag of the resource", + "type": "string" + } + }, + "allOf": [ + { + "$ref": "Deployment.json#/definitions/Resource" + } + ] + }, + "LocationAdminProperties": { + "description": "Location Admin Properties", + "type": "object", + "properties": { + "location": { + "description": "the location name", + "title": "location", + "type": "string" + } + } + } + }, + "parameters": {}, + "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/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/OperationResults.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/OperationResults.json new file mode 100644 index 000000000000..1e8f1dffb547 --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/OperationResults.json @@ -0,0 +1,150 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-01-01", + "title": "DeploymentAdminClient", + "description": "Deployment Admin Client." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/{location}/operationresults/{operationResultId}": { + "get": { + "x-ms-examples": { + "Get the operation details.": { + "$ref": "./examples/OperationResults/Get.json" + } + }, + "description": "Retrieves the specific operation results.", + "tags": [ + "OperationResults" + ], + "operationId": "OperationResults_Get", + "parameters": [ + { + "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "Deployment.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "Deployment.json#/parameters/LocationParameter" + }, + { + "$ref": "#/parameters/OperationResultIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationResult" + } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } + } + } + } + } + }, + "definitions": { + "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 deployment start time", + "type": "string", + "format": "date-time" + }, + "endTime": { + "description": "The deployment end time", + "type": "string", + "format": "date-time" + }, + "percentComplete": { + "type": "number", + "format": "double", + "minimum": 0, + "maximum": 100, + "description": "Percentage completed." + } + } + }, + "Status": { + "description": "Specifies the state of the Operation result.", + "type": "string", + "enum": [ + "Bootstrapping", + "Creating", + "ExecutingRunner", + "Updating", + "Deleting", + "Deploying", + "Removing", + "RotatingSecrets", + "Canceled", + "Failed", + "Succeeded" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "Status" + } + } + }, + "parameters": { + "OperationResultIdParameter": { + "description": "The operation result identifier.", + "name": "operationResultId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Authorization uses an Azure Active Directory OAuth2 flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductDeployment.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductDeployment.json index 2d066392edfe..2709fd8be308 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductDeployment.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductDeployment.json @@ -42,6 +42,12 @@ "schema": { "$ref": "#/definitions/ProductDeploymentsList" } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } }, "x-ms-pageable": { @@ -79,8 +85,11 @@ "$ref": "#/definitions/ProductDeploymentResourceEntity" } }, - "404": { - "description": "NOT FOUND" + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } } } @@ -96,7 +105,7 @@ "tags": [ "ProductDeployments" ], - "operationId": "ProductDeployments_BootStrap", + "operationId": "BootstrapAction_Product", "parameters": [ { "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" @@ -117,6 +126,12 @@ }, "202": { "description": "ACCEPTED" + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } }, "x-ms-long-running-operation": true @@ -133,7 +148,7 @@ "tags": [ "ProductDeployments" ], - "operationId": "ProductDeployments_Deploy", + "operationId": "DeployAction_Product", "parameters": [ { "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" @@ -154,6 +169,12 @@ }, "202": { "description": "ACCEPTED" + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } }, "x-ms-long-running-operation": true @@ -170,7 +191,7 @@ "tags": [ "ProductDeployments" ], - "operationId": "ProductDeployments_Remove", + "operationId": "RemoveAction_Product", "parameters": [ { "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" @@ -188,6 +209,15 @@ }, "202": { "description": "ACCEPTED" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } }, "x-ms-long-running-operation": true @@ -204,7 +234,7 @@ "tags": [ "ProductDeployments" ], - "operationId": "ProductDeployments_RotateSecrets", + "operationId": "RotateSecretsAction_Product", "parameters": [ { "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" @@ -222,23 +252,29 @@ }, "202": { "description": "ACCEPTED" + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } }, "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/global/productDeployments/{productId}/unlock": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/global/productDeployments/{productId}/executeRunner": { "post": { "x-ms-examples": { - "Unlocks the product subscription": { - "$ref": "./examples/ProductDeployment/Unlock.json" + "Invokes rotate secrets action on the product deployment": { + "$ref": "./examples/ProductDeployment/ExecuteRunner.json" } }, - "description": "Unlocks the product subscription", + "description": "Invokes execute runner action on the product deployment", "tags": [ "ProductDeployments" ], - "operationId": "ProductDeployments_Unlock", + "operationId": "ExecuteRunnerAction_Product", "parameters": [ { "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" @@ -247,47 +283,27 @@ "$ref": "Deployment.json#/parameters/ProductIdParameter" }, { - "$ref": "ProductDeployment.json#/parameters/UnlockActionParameter" + "$ref": "Deployment.json#/parameters/ApiVersionParameter" }, { - "$ref": "Deployment.json#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ExecuteRunnerActionParameter" } ], "responses": { "200": { "description": "OK" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/global/productDeployments/{productId}/lock": { - "post": { - "x-ms-examples": { - "locks the product subscription": { - "$ref": "./examples/ProductDeployment/Lock.json" - } - }, - "description": "locks the product subscription", - "tags": [ - "ProductDeployments" - ], - "operationId": "ProductDeployments_Lock", - "parameters": [ - { - "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" }, - { - "$ref": "Deployment.json#/parameters/ProductIdParameter" + "202": { + "description": "ACCEPTED" }, - { - "$ref": "Deployment.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK" + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } - } + }, + "x-ms-long-running-operation": true } } }, @@ -479,7 +495,7 @@ }, "parameters": { "description": "Deployment parameters, value in JToken", - "type": "string" + "type": "object" } } }, @@ -493,13 +509,13 @@ } } }, - "UnlockActionParameters": { - "description": "Parameters for bootstrap action", + "ExecuteRunnerActionParameters": { + "description": "Parameters for execute runner action", "type": "object", "properties": { - "duration": { - "description": "Duration in TimeSpan format(Define which ISO format)", - "type": "string" + "parameters": { + "description": "Execute Runner parameters, value in JToken", + "type": "object" } } } @@ -523,23 +539,23 @@ }, "x-ms-parameter-location": "method" }, - "UnlockActionParameter": { + "DeployActionParameter": { "description": "Represents bootstrap action parameter", - "name": "unlockActionParameter", + "name": "deployActionParameter", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/UnlockActionParameters" + "$ref": "#/definitions/DeployActionParameters" }, "x-ms-parameter-location": "method" }, - "DeployActionParameter": { - "description": "Represents bootstrap action parameter", - "name": "deployActionParameter", + "ExecuteRunnerActionParameter": { + "description": "Represents execute runner action parameter", + "name": "executeRunnerActionParameter", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/DeployActionParameters" + "$ref": "#/definitions/ExecuteRunnerActionParameters" }, "x-ms-parameter-location": "method" } diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductPackage.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductPackage.json index 150376191118..56f7a259a89d 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductPackage.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductPackage.json @@ -42,6 +42,12 @@ "schema": { "$ref": "#/definitions/ProductPackagesList" } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } }, "x-ms-pageable": { @@ -49,7 +55,7 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/global/productPackages/{productId}": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/global/productPackages/{packageId}": { "get": { "x-ms-examples": { "Return the product package details.": { @@ -66,7 +72,7 @@ "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "Deployment.json#/parameters/ProductIdParameter" + "$ref": "Deployment.json#/parameters/PackageIdParameter" }, { "$ref": "Deployment.json#/parameters/ApiVersionParameter" @@ -79,8 +85,11 @@ "$ref": "#/definitions/ProductPackage" } }, - "404": { - "description": "Not Found" + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } } }, @@ -100,7 +109,10 @@ "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "Deployment.json#/parameters/ProductIdParameter" + "$ref": "Deployment.json#/parameters/PackageIdParameter" + }, + { + "$ref": "#/parameters/ProductPackageParameters" }, { "$ref": "Deployment.json#/parameters/ApiVersionParameter" @@ -115,6 +127,12 @@ }, "202": { "description": "Accepted" + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } }, "x-ms-long-running-operation": true @@ -135,7 +153,7 @@ "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "Deployment.json#/parameters/ProductIdParameter" + "$ref": "Deployment.json#/parameters/PackageIdParameter" }, { "$ref": "Deployment.json#/parameters/ApiVersionParameter" @@ -145,8 +163,14 @@ "200": { "description": "OK" }, - "404": { - "description": "Not found" + "204": { + "description": "No Content" + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } }, "x-ms-long-running-operation": true @@ -246,9 +270,40 @@ "items": { "$ref": "#/definitions/ProductLink" } + }, + "ProductPackageParameters": { + "description": "Parameters for creating a new product package.", + "type": "object", + "properties": { + "properties": { + "description": "Specifies the product package", + "$ref": "#/definitions/ProductPackageBody" + } + } + }, + "ProductPackageBody": { + "description": "Body for creating a new product package.", + "type": "object", + "properties": { + "fileContainerId": { + "description": "Specifies the file container.", + "$ref": "#/definitions/FileContainerId" + } + } + } + }, + "parameters": { + "ProductPackageParameters": { + "description": "The parameters required to create a new product package.", + "name": "ProductPackageParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ProductPackageParameters" + }, + "x-ms-parameter-location": "method" } }, - "parameters": {}, "securityDefinitions": { "azure_auth": { "type": "oauth2", diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductSecret.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductSecret.json index 2b4950722d0d..948a731ec7fc 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductSecret.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductSecret.json @@ -10,7 +10,7 @@ "https" ], "paths": { - "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/global/productPackages/{productId}/secrets": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/global/productPackages/{packageId}/secrets": { "get": { "x-ms-examples": { "Return product secrets list.": { @@ -30,7 +30,7 @@ "$ref": "Deployment.json#/parameters/ApiVersionParameter" }, { - "$ref": "Deployment.json#/parameters/ProductIdParameter" + "$ref": "Deployment.json#/parameters/PackageIdParameter" } ], "responses": { @@ -39,6 +39,12 @@ "schema": { "$ref": "#/definitions/ProductSecretsList" } + }, + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } }, "produces": [ @@ -52,27 +58,27 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/global/productSecrets/{productId}/secrets/{secretName}": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/global/productPackages/{packageId}/secrets/{secretName}": { "get": { "x-ms-examples": { - "Return the product package details.": { + "Return product secrets list.": { "$ref": "./examples/ProductSecret/Get.Json" } }, - "description": "Retrieves the specific product secret details.", + "description": "Returns the specific product secret.", "tags": [ "ProductSecrets" ], - "operationId": "ProductSecrets_Get", + "operationId": "ProductSecrets_GET", "parameters": [ { "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "Deployment.json#/parameters/ProductIdParameter" + "$ref": "Deployment.json#/parameters/ApiVersionParameter" }, { - "$ref": "Deployment.json#/parameters/ApiVersionParameter" + "$ref": "Deployment.json#/parameters/PackageIdParameter" }, { "$ref": "#/parameters/SecretNameParameter" @@ -85,8 +91,11 @@ "$ref": "#/definitions/ProductSecret" } }, - "404": { - "description": "Not Found" + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } }, "produces": [ @@ -97,7 +106,7 @@ ] } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/global/productSecrets/{productId}/secrets/{secretName}/import": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/global/productPackages/{packageId}/secrets/{secretName}/import": { "post": { "x-ms-examples": { "Imports a product secret.": { @@ -108,13 +117,13 @@ "tags": [ "ProductSecrets" ], - "operationId": "ProductSecrets_Import", + "operationId": "ProductSecrets_Set", "parameters": [ { "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "Deployment.json#/parameters/ProductIdParameter" + "$ref": "Deployment.json#/parameters/PackageIdParameter" }, { "$ref": "#/parameters/SecretNameParameter" @@ -130,8 +139,11 @@ "200": { "description": "Accepted" }, - "404": { - "description": "Not Found" + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } }, "x-ms-long-running-operation": true, @@ -143,7 +155,7 @@ ] } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/global/productSecrets/{productId}/secrets/{secretName}/validate": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Deployment.Admin/locations/global/productPackages/{packageId}/secrets/{secretName}/validate": { "post": { "x-ms-examples": { "Validates a product secret.": { @@ -160,7 +172,7 @@ "$ref": "Deployment.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "Deployment.json#/parameters/ProductIdParameter" + "$ref": "Deployment.json#/parameters/PackageIdParameter" }, { "$ref": "#/parameters/SecretNameParameter" @@ -176,8 +188,11 @@ "200": { "description": "Accepted" }, - "404": { - "description": "Not Found" + "default": { + "description": "Default Response.", + "schema": { + "$ref": "Deployment.json#/definitions/ExtendedErrorInfo" + } } }, "x-ms-long-running-operation": true, @@ -375,23 +390,19 @@ "name": "SecretRotationStatus" } }, - "SecretValue": { + "value": { "description": "The secret value in a secure string format.", "type": "string" }, - "PfxFileName": { - "description": "The pfx certificate file location.", - "type": "string" - }, - "PfxPassword": { - "description": "The pfx certificate file password as a secure string.", + "data": { + "description": "The converted Base64 String from a certificate pfx file.", "type": "string" }, - "SymmetricKey": { + "key": { "description": "The symmetric key as a secure string.", "type": "string" }, - "Password": { + "password": { "description": "The password as a secure string.", "type": "string" }, @@ -399,25 +410,21 @@ "description": "Parameters required for creating/updating a product secret.", "type": "object", "properties": { - "secretValue": { + "value": { "description": "The secret value in a secure string format.", - "$ref": "#/definitions/SecretValue" + "$ref": "#/definitions/value" }, - "pfxFileName": { - "description": "The pfx certificate file location.", - "$ref": "#/definitions/PfxFileName" + "data": { + "description": "The pfx certificate converted Base64 data.", + "$ref": "#/definitions/data" }, - "pfxPassword": { + "password": { "description": "The pfx certificate file password.", - "$ref": "#/definitions/PfxPassword" + "$ref": "#/definitions/password" }, - "symmetricKey": { + "key": { "description": "The symmetric key.", - "$ref": "#/definitions/SymmetricKey" - }, - "password": { - "description": "The pfx certificate file password.", - "$ref": "#/definitions/Password" + "$ref": "#/definitions/key" } } } @@ -447,47 +454,7 @@ "in": "body", "required": true, "schema": { - "$ref": "#/definitions/SecretValue" - }, - "x-ms-parameter-location": "method" - }, - "PfxFileNameParameter": { - "description": "The pfx certificate file location.", - "name": "pfxFileName", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/PfxFileName" - }, - "x-ms-parameter-location": "method" - }, - "PfxPasswordParameter": { - "description": "The pfx certificate file password.", - "name": "pfxPasswordParameter", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/PfxPassword" - }, - "x-ms-parameter-location": "method" - }, - "SymmetricKeyParameter": { - "description": "The symmetric key.", - "name": "SymmetricKeyParameter", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/SymmetricKey" - }, - "x-ms-parameter-location": "method" - }, - "PasswordParameter": { - "description": "The password.", - "name": "PasswordParameter", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Password" + "$ref": "#/definitions/value" }, "x-ms-parameter-location": "method" } diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ActionPlan/Get.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ActionPlan/Get.json index bd293cc207e7..9eb46e88e746 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ActionPlan/Get.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ActionPlan/Get.json @@ -22,7 +22,6 @@ "provisioningState": "Succeeded" } } - }, - "404": {} + } } } diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ActionPlan/List.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ActionPlan/List.json index 9dcd1b396f30..7762b7c897ac 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ActionPlan/List.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ActionPlan/List.json @@ -25,8 +25,7 @@ } } ] - }, - "404": {} + } } } } diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ActionPlanOperationAttempt/Get.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ActionPlanOperationAttempt/Get.json new file mode 100644 index 000000000000..0aac2fceef65 --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ActionPlanOperationAttempt/Get.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "966178ff-f8a1-4d43-be09-2cc47f0d3560", + "location": "global", + "api-version": "2019-01-01", + "planId": "0b5ddf5b-cb5a-4dcc-8c2c-d55f1c70eced", + "operationId": "UpgradeSFRuntimeInEventHubDataClusters" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/966178ff-f8a1-4d43-be09-2cc47f0d3560/providers/Microsoft.Deployment.Admin/locations/global/actionplans/0b5ddf5b-cb5a-4dcc-8c2c-d55f1c70eced/operations/UpgradeSFRuntimeInEventHubDataClusters/attempts/1", + "name": "global/0b5ddf5b-cb5a-4dcc-8c2c-d55f1c70eced/UpgradeSFRuntimeInEventHubDataClusters/1", + "type": "Microsoft.Deployment.Admin/locations/actionplans/operations/attempts", + "properties": { + "startTime": "2020-04-23T02:59:50.5512046Z", + "endTime": "2020-04-23T03:02:48.2542795Z", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ActionPlanOperations/Get.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ActionPlanOperations/Get.json index 916645557aa5..b2f8a694300c 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ActionPlanOperations/Get.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ActionPlanOperations/Get.json @@ -78,7 +78,6 @@ "provisioningState": "Succeeded" } } - }, - "404": {} + } } } diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/FileContainer/Delete.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/FileContainer/Delete.json index 7ee403600e6d..56aa015592ba 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/FileContainer/Delete.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/FileContainer/Delete.json @@ -7,6 +7,6 @@ }, "responses": { "200": {}, - "404": {} + "204": {} } } diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/FileContainer/Get.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/FileContainer/Get.json index 1825d47eb2a0..937784a74cbb 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/FileContainer/Get.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/FileContainer/Get.json @@ -18,7 +18,6 @@ "provisioningState": "Succeeded" } } - }, - "404": {} + } } } diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/Locations/Get.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/Locations/Get.json new file mode 100644 index 000000000000..b097755df967 --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/Locations/Get.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "location": "global", + "api-version": "2019-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/b42940a9-c92c-44c8-b745-7558ad4b08d9/providers/Microsoft.Deployment.Admin/locations/global", + "name": "global", + "type": "Microsoft.Deployment.Admin/locations", + "properties": { + "location": "global" + } + } + } + } +} diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/Locations/List.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/Locations/List.json new file mode 100644 index 000000000000..1c67797c584c --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/Locations/List.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "api-version": "2019-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Deployment.Admin/locations/1", + "name": "1", + "type": "Microsoft.Deployment.Admin/locations/1", + "properties": { + "location": "global" + } + } + ] + } + } + } +} diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/OperationResults/Get.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/OperationResults/Get.json new file mode 100644 index 000000000000..dfc9780b5021 --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/OperationResults/Get.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "966178ff-f8a1-4d43-be09-2cc47f0d3560", + "location": "redmond", + "api-version": "2019-01-01", + "operationResultId": "5cf211b1-5971-4edd-8ee2-11c0f651d469" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/966178ff-f8a1-4d43-be09-2cc47f0d3560/providers/Microsoft.Deployment.Admin/locations/redmond/operationResults/5cf211b1-5971-4edd-8ee2-11c0f651d469", + "name": "5cf211b1-5971-4edd-8ee2-11c0f651d469", + "status": "Bootstrapping", + "startTime": "2020-04-28T04:12:45.1800272Z", + "endTime": "0001-01-01T00:00:00Z", + "percentComplete": 0.0 + } + } + } +} diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/Deploy.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/Deploy.json index 47466509160e..2ce6071df747 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/Deploy.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/Deploy.json @@ -5,7 +5,8 @@ "api-version": "2019-01-01", "productId": "Microsoft.IotHubPreview", "deployActionParameter": { - "version": "1.0.2" + "version": "1.0.2", + "parameters": {} } }, "responses": { diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/ExecuteRunner.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/ExecuteRunner.json new file mode 100644 index 000000000000..e2594cdc0f4a --- /dev/null +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/ExecuteRunner.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "7715e512-3adf-48e8-baeb-6d3fcc3de665", + "location": "global", + "api-version": "2019-01-01", + "productId": "Microsoft.NullProvider", + "executeRunnerActionParameter": { + "parameters": {} + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/Get.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/Get.json index 260d2b3f837e..c338e71fa21d 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/Get.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/Get.json @@ -17,7 +17,6 @@ "provisioningState": "Succeeded" } } - }, - "404": {} + } } } diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/Lock.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/Lock.json deleted file mode 100644 index 2f0b39fa1bb4..000000000000 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/Lock.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "parameters": { - "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", - "location": "global", - "api-version": "2019-01-01", - "productId": "Microsoft.IotHubPreview" - }, - "responses": { - "200": {} - } -} diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/Remove.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/Remove.json index 05fdceedfbb6..cef5ba4f6b10 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/Remove.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/Remove.json @@ -7,6 +7,7 @@ }, "responses": { "200": {}, - "202": {} + "202": {}, + "204": {} } } diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/Unlock.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/Unlock.json deleted file mode 100644 index 648670de33b3..000000000000 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductDeployment/Unlock.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "parameters": { - "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", - "location": "global", - "api-version": "2019-01-01", - "productId": "Microsoft.IotHubPreview", - "unlockActionParameter": { - "duration": "P5D" - } - }, - "responses": { - "200": {} - } -} diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductPackage/Create.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductPackage/Create.json index b3439f9c6e71..bf9573250475 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductPackage/Create.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductPackage/Create.json @@ -3,8 +3,8 @@ "subscriptionId": "be8b2e19-7f92-4644-b808-a18283aebb01", "location": "global", "api-version": "2019-01-01", - "productId": "Microsoft.NullProvider.1.1", - "fileContainerParameter": { + "packageId": "Microsoft.NullProvider.1.1", + "ProductPackageParameters": { "properties": { "fileContainerId": "Microsoft.NullProvider.1.1" } diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductPackage/Delete.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductPackage/Delete.json index 106199cd1975..ab64764c8d46 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductPackage/Delete.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductPackage/Delete.json @@ -3,10 +3,10 @@ "subscriptionId": "be8b2e19-7f92-4644-b808-a18283aebb01", "location": "global", "api-version": "2019-01-01", - "productId": "Microsoft.NullProvider.1.1" + "packageId": "Microsoft.NullProvider.1.1" }, "responses": { "200": {}, - "404": {} + "204": {} } } diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductPackage/Get.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductPackage/Get.json index 593f444612a6..bc5abce11e66 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductPackage/Get.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductPackage/Get.json @@ -3,7 +3,7 @@ "subscriptionId": "be8b2e19-7f92-4644-b808-a18283aebb01", "location": "global", "api-version": "2019-01-01", - "productId": "Microsoft.NullProvider.1.1" + "packageId": "Microsoft.NullProvider.1.1" }, "responses": { "200": { @@ -18,7 +18,6 @@ "provisioningState": "Succeeded" } } - }, - "404": {} + } } } diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductSecret/Get.Json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductSecret/Get.Json index b6c83ec44937..16b0913aeec5 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductSecret/Get.Json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductSecret/Get.Json @@ -3,9 +3,8 @@ "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", "location": "global", "api-version": "2019-01-01", - "productId": "Microsoft.IotHubPreview.1.0.2", - "secretName": "secretName", - "secretValue": "sslCert" + "packageId": "Microsoft.IotHubPreview.1.0.2", + "secretName": "sslCert" }, "responses": { "200": { @@ -28,7 +27,6 @@ "provisioningState": "Succeeded" } } - }, - "404": {} + } } } diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductSecret/Import.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductSecret/Import.json index bf7340c44ac4..faf14789152a 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductSecret/Import.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductSecret/Import.json @@ -3,12 +3,10 @@ "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", "location": "global", "api-version": "2019-01-01", - "productId": "Microsoft.IotHubPreview.1.0.2", + "packageId": "Microsoft.IotHubPreview.1.0.2", "secretName": "secretName", "secretParameters": { - "properties": { - "secretValue": "sslCert" - } + "value": "sslCert" }, "newOffer": { "properties": { @@ -18,7 +16,6 @@ } }, "responses": { - "200": {}, - "404": {} + "200": {} } } diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductSecret/List.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductSecret/List.json index cc35a2b5b53a..8ef03a210b70 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductSecret/List.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductSecret/List.json @@ -3,8 +3,8 @@ "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", "location": "global", "api-version": "2019-01-01", - "productId": "Microsoft.IotHubPreview.1.0.2", - "secretValue": "sslCert" + "packageId": "Microsoft.IotHubPreview.1.0.2", + "value": "sslCert" }, "responses": { "200": { diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductSecret/Validate.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductSecret/Validate.json index 09fc63e01e89..5c6252cd8143 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductSecret/Validate.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/examples/ProductSecret/Validate.json @@ -3,12 +3,10 @@ "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", "location": "global", "api-version": "2019-01-01", - "productId": "Microsoft.IotHubPreview.1.0.2", + "packageId": "Microsoft.IotHubPreview.1.0.2", "secretName": "secretName", "secretParameters": { - "properties": { - "secretValue": "sslCert" - } + "value": "sslCert" }, "secretValue": "sslCert", "newOffer": { @@ -19,7 +17,6 @@ } }, "responses": { - "200": {}, - "404": {} + "200": {} } } diff --git a/specification/azsadmin/resource-manager/deployment/readme.md b/specification/azsadmin/resource-manager/deployment/readme.md index 3976fe43cc0f..3de0982996e6 100644 --- a/specification/azsadmin/resource-manager/deployment/readme.md +++ b/specification/azsadmin/resource-manager/deployment/readme.md @@ -36,12 +36,23 @@ input-file: - Microsoft.Deployment.Admin/preview/2019-01-01/Deployment.json - Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlan.json - Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlanOperation.json + - Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlanOperationAttempt.json - Microsoft.Deployment.Admin/preview/2019-01-01/FileContainer.json + - Microsoft.Deployment.Admin/preview/2019-01-01/Locations.json + - Microsoft.Deployment.Admin/preview/2019-01-01/OperationResults.json - Microsoft.Deployment.Admin/preview/2019-01-01/ProductDeployment.json - Microsoft.Deployment.Admin/preview/2019-01-01/ProductPackage.json - Microsoft.Deployment.Admin/preview/2019-01-01/ProductSecret.json ``` +### Tag: package-2018-07-01 +These settings apply only when `--tag=package-2018-07-01` is specified on the command line. + +``` yaml $(tag) == 'package-2018-07-01' +input-file: + - Microsoft.Deployment.Admin/preview/2018-07-01/FileContainer.json + - Microsoft.Deployment.Admin/preview/2018-07-01/ProductPackage.json +``` --- # Code Generation @@ -72,10 +83,16 @@ input-file: - $(this-folder)/Microsoft.Deployment.Admin/preview/2019-01-01/Deployment.json - $(this-folder)/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlan.json - $(this-folder)/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlanOperation.json + - $(this-folder)/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlanOperationAttempt.json - $(this-folder)/Microsoft.Deployment.Admin/preview/2019-01-01/FileContainer.json + - $(this-folder)/Microsoft.Deployment.Admin/preview/2019-01-01/Locations.json + - $(this-folder)/Microsoft.Deployment.Admin/preview/2019-01-01/OperationResults.json - $(this-folder)/Microsoft.Deployment.Admin/preview/2019-01-01/ProductDeployment.json - $(this-folder)/Microsoft.Deployment.Admin/preview/2019-01-01/ProductPackage.json - $(this-folder)/Microsoft.Deployment.Admin/preview/2019-01-01/ProductSecret.json + - $(this-folder)/Microsoft.Deployment.Admin/preview/2018-07-01/FileContainer.json + - $(this-folder)/Microsoft.Deployment.Admin/preview/2018-07-01/ProductPackage.json + ``` If there are files that should not be in the `all-api-versions` set, diff --git a/specification/azureactivedirectory/resource-manager/readme.md b/specification/azureactivedirectory/resource-manager/readme.md index 46fe420e432e..a280ce576d65 100644 --- a/specification/azureactivedirectory/resource-manager/readme.md +++ b/specification/azureactivedirectory/resource-manager/readme.md @@ -129,11 +129,10 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/Microsoft.Aadiam/stable/2017-04-01/azureactivedirectory.json - $(this-folder)/Microsoft.Aadiam/preview/2020-07-01-preview/azureADMetrics.json - $(this-folder)/Microsoft.Aadiam/preview/2020-03-01-preview/privateLinkForAzureAD.json - $(this-folder)/Microsoft.Aadiam/preview/2020-03-01-preview/privateLinkResources.json - + - $(this-folder)/Microsoft.Aadiam/stable/2017-04-01/azureactivedirectory.json ``` diff --git a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/azuredata.json b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/azuredata.json index 306176fe6c91..7f52976db6c8 100644 --- a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/azuredata.json +++ b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/azuredata.json @@ -1518,6 +1518,15 @@ { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "dataControllerResource", + "description": "desc", + "required": true, + "in": "body", + "schema": { + "$ref": "#/definitions/DataControllerResource" + } + }, { "name": "dataControllerName", "in": "path", @@ -2290,10 +2299,11 @@ } }, "DataControllerProperties": { + "description": "The data controller properties.", "type": "object", "properties": { - "dataController": { - "$ref": "#/definitions/DataController" + "onPremiseProperty": { + "$ref": "#/definitions/OnPremiseProperty" }, "requestType": { "$ref": "#/definitions/RequestType" @@ -2312,28 +2322,22 @@ } } }, - "DataController": { + "OnPremiseProperty": { + "description": "Properties from the on premise data controller", "type": "object", "properties": { "id": { "type": "string", - "format": "uuid" - }, - "name": { - "type": "string" - }, - "azureResourceType": { - "type": "string" + "format": "uuid", + "description": "A globally unique ID identifying the associated on premise cluster" }, - "subscription": { + "publicSigningKey": { "type": "string", - "format": "uuid" - }, - "resourceGroup": { - "type": "string" + "description": "Certificate that contains the on premise cluster public key used to verify signing" }, - "location": { - "type": "string" + "signingCertificateThumbprint": { + "type": "string", + "description": "Unique thumbprint returned to customer to verify the certificate being uploaded" } } }, diff --git a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/CreateOrUpdateDataController.json b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/CreateOrUpdateDataController.json index 2977f808ef85..74731c2ddcff 100644 --- a/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/CreateOrUpdateDataController.json +++ b/specification/azuredata/resource-manager/Microsoft.AzureData/preview/2019-07-24-preview/examples/CreateOrUpdateDataController.json @@ -4,18 +4,29 @@ "resourceGroupName": "testrg", "dataControllerName": "testdataController", "api-version": "2017-07-24", - "parameters": { + "dataControllerResource": { "location": "northeurope", "tags": { "mytag": "myval" }, - "properties": {} + "properties": { + "onPremiseProperty": { + "id": "12345678-1234-1234-ab12-1a2b3c4d5e6f", + "publicSigningKey": "publicOnPremSigningKey" + } + } } }, "responses": { "200": { "body": { - "properties": {}, + "properties": { + "onPremiseProperty": { + "id": "12345678-1234-1234-ab12-1a2b3c4d5e6f", + "publicSigningKey": "publicOnPremSigningKey", + "signingCertificateThumbprint": "Unique thumbprint returned to customer to verify the certificate being uploaded" + } + }, "systemData": { "createdBy": "user1", "createdByType": "user", @@ -35,7 +46,13 @@ }, "201": { "body": { - "properties": {}, + "properties": { + "onPremiseProperty": { + "id": "12345678-1234-1234-ab12-1a2b3c4d5e6f", + "publicSigningKey": "publicOnPremSigningKey", + "signingCertificateThumbprint": "Unique thumbprint returned to customer to verify the certificate being uploaded" + } + }, "location": "northeurope", "systemData": { "createdBy": "user1", diff --git a/specification/azurestackhci/resource-manager/readme.go.md b/specification/azurestackhci/resource-manager/readme.go.md index 8eb11c43f1de..fddd0e002a49 100644 --- a/specification/azurestackhci/resource-manager/readme.go.md +++ b/specification/azurestackhci/resource-manager/readme.go.md @@ -8,6 +8,13 @@ go: clear-output-folder: true ``` +### Go multi-api + +```yaml $(go) && $(multiapi) +batch: + - tag: package-2020-03-01-preview +``` + ### Tag: package-2020-03-01-preview and go These settings apply only when `--tag=package-2020-03-01-preview --go` is specified on the command line. diff --git a/specification/azurestackhci/resource-manager/readme.md b/specification/azurestackhci/resource-manager/readme.md index 8f80f0887e92..d30f27d90903 100644 --- a/specification/azurestackhci/resource-manager/readme.md +++ b/specification/azurestackhci/resource-manager/readme.md @@ -88,3 +88,28 @@ See configuration in [readme.typescript.md](./readme.typescript.md) ## CSharp See configuration in [readme.csharp.md](./readme.csharp.md) + +## Multi-API/Profile support for AutoRest v3 generators + +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +This block is updated by an automatic script. Edits may be lost! + +``` yaml $(tag) == 'all-api-versions' /* autogenerated */ +# include the azure profile definitions from the standard location +require: $(this-folder)/../../../profiles/readme.md + +# all the input files across all versions +input-file: + - $(this-folder)/Microsoft.AzureStackHCI/preview/2020-03-01-preview/azurestackhci.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/billing/resource-manager/readme.md b/specification/billing/resource-manager/readme.md index d7dd48f19501..f2031f4bbc94 100644 --- a/specification/billing/resource-manager/readme.md +++ b/specification/billing/resource-manager/readme.md @@ -244,6 +244,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - $(this-folder)/Microsoft.Billing/stable/2020-05-01/billing.json + - $(this-folder)/Microsoft.Billing/preview/2018-03-01-preview/billingV2.json - $(this-folder)/Microsoft.Billing/preview/2019-10-01-preview/billing.json - $(this-folder)/Microsoft.Billing/preview/2018-11-01-preview/billing.json - $(this-folder)/Microsoft.Billing/preview/2018-03-01-preview/billing.json diff --git a/specification/botservice/resource-manager/readme.md b/specification/botservice/resource-manager/readme.md index 16c01f946217..de1dff1bfa0b 100644 --- a/specification/botservice/resource-manager/readme.md +++ b/specification/botservice/resource-manager/readme.md @@ -136,6 +136,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.BotService/stable/2020-06-02/botservice.json - $(this-folder)/Microsoft.BotService/preview/2018-07-12/botservice.json - $(this-folder)/Microsoft.BotService/preview/2017-12-01/botservice.json diff --git a/specification/cloudshell/resource-manager/readme.md b/specification/cloudshell/resource-manager/readme.md index 383773dcd1ce..76ac94994ab1 100644 --- a/specification/cloudshell/resource-manager/readme.md +++ b/specification/cloudshell/resource-manager/readme.md @@ -145,4 +145,28 @@ csharp: client-side-validation: false namespace: Microsoft.CloudShell output-folder: $(csharp-sdks-folder)/CloudShell/management/Microsoft.CloudShell/GeneratedProtocol -``` \ No newline at end of file +``` +## 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.Portal/stable/2018-10-01/CloudShell.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/CustomVision/Prediction/readme.md b/specification/cognitiveservices/data-plane/CustomVision/Prediction/readme.md index 1441a4a7fcad..3bfd212871ea 100644 --- a/specification/cognitiveservices/data-plane/CustomVision/Prediction/readme.md +++ b/specification/cognitiveservices/data-plane/CustomVision/Prediction/readme.md @@ -138,6 +138,7 @@ require: $(this-folder)/../../../../../profiles/readme.md input-file: - $(this-folder)/stable/v2.0/Prediction.json - $(this-folder)/stable/v3.0/Prediction.json + - $(this-folder)/stable/v3.1/Prediction.json ``` diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/readme.md b/specification/cognitiveservices/data-plane/CustomVision/Training/readme.md index c24589d79dc3..4941afe9c847 100644 --- a/specification/cognitiveservices/data-plane/CustomVision/Training/readme.md +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/readme.md @@ -172,6 +172,7 @@ input-file: - $(this-folder)/stable/v3.1/Training.json - $(this-folder)/stable/v3.2/Training.json - $(this-folder)/stable/v3.3/Training.json + ``` If there are files that should not be in the `all-api-versions` set, diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/TextAnalytics.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/TextAnalytics.json index 0ff15eff3ba9..be6c1a405786 100644 --- a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/TextAnalytics.json +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/TextAnalytics.json @@ -1279,7 +1279,7 @@ "type": "object", "required": [ "id", - "detectedLanguages", + "detectedLanguage", "warnings" ], "properties": { @@ -1287,12 +1287,9 @@ "type": "string", "description": "Unique, non-empty document identifier." }, - "detectedLanguages": { - "type": "array", - "description": "A list of extracted languages.", - "items": { - "$ref": "#/definitions/DetectedLanguage" - } + "detectedLanguage": { + "description": "Detected Language.", + "$ref": "#/definitions/DetectedLanguage" }, "warnings": { "type": "array", diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulLanguagesRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulLanguagesRequest.json index fad894b10669..a74d7155c8e0 100644 --- a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulLanguagesRequest.json +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulLanguagesRequest.json @@ -27,35 +27,29 @@ "documents": [ { "id": "1", - "detectedLanguages": [ - { - "name": "English", - "iso6391Name": "en", - "confidenceScore": 1 - } - ], + "detectedLanguage": { + "name": "English", + "iso6391Name": "en", + "confidenceScore": 1 + }, "warnings": [] }, { "id": "2", - "detectedLanguages": [ - { - "name": "French", - "iso6391Name": "fr", - "confidenceScore": 1 - } - ], + "detectedLanguage": { + "name": "French", + "iso6391Name": "fr", + "confidenceScore": 1 + }, "warnings": [] }, { "id": "3", - "detectedLanguages": [ - { - "name": "Spanish", - "iso6391Name": "es", - "confidenceScore": 1 - } - ], + "detectedLanguage": { + "name": "Spanish", + "iso6391Name": "es", + "confidenceScore": 1 + }, "warnings": [] } ], diff --git a/specification/cognitiveservices/data-plane/TranslatorText/readme.md b/specification/cognitiveservices/data-plane/TranslatorText/readme.md index f6b28b8d49fe..5a735afe3c26 100644 --- a/specification/cognitiveservices/data-plane/TranslatorText/readme.md +++ b/specification/cognitiveservices/data-plane/TranslatorText/readme.md @@ -180,8 +180,8 @@ require: $(this-folder)/../../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/stable/v3.0/TranslatorText.json - $(this-folder)/preview/v1.0-preview.1/TranslatorBatch.json + - $(this-folder)/stable/v3.0/TranslatorText.json ``` diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-06-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-06-01/compute.json index bf776693fce8..0640865e3b27 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2020-06-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2020-06-01/compute.json @@ -7260,6 +7260,10 @@ "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." @@ -7302,6 +7306,10 @@ "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." @@ -10109,6 +10117,10 @@ "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." diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md index a22faa6abe1f..ffe6a70bb98a 100644 --- a/specification/compute/resource-manager/readme.md +++ b/specification/compute/resource-manager/readme.md @@ -817,13 +817,15 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Compute/stable/2020-06-01/compute.json + - $(this-folder)/Microsoft.Compute/stable/2020-06-01/runCommands.json + - $(this-folder)/Microsoft.Compute/stable/2019-04-01/skus.json - $(this-folder)/Microsoft.Compute/stable/2020-05-01/disk.json + - $(this-folder)/Microsoft.Compute/stable/2019-12-01/gallery.json + - $(this-folder)/Microsoft.ContainerService/stable/2017-01-31/containerService.json - $(this-folder)/Microsoft.Compute/stable/2019-12-01/compute.json - $(this-folder)/Microsoft.Compute/stable/2019-12-01/runCommands.json - - $(this-folder)/Microsoft.Compute/stable/2019-04-01/skus.json - $(this-folder)/Microsoft.Compute/stable/2019-11-01/disk.json - - $(this-folder)/Microsoft.Compute/stable/2019-12-01/gallery.json - - $(this-folder)/Microsoft.ContainerService/stable/2017-01-31/containerService.json - $(this-folder)/Microsoft.Compute/stable/2019-07-01/compute.json - $(this-folder)/Microsoft.Compute/stable/2019-07-01/runCommands.json - $(this-folder)/Microsoft.Compute/stable/2019-07-01/gallery.json diff --git a/specification/containerinstance/resource-manager/readme.md b/specification/containerinstance/resource-manager/readme.md index 14839315995e..0aa15d6d6fee 100644 --- a/specification/containerinstance/resource-manager/readme.md +++ b/specification/containerinstance/resource-manager/readme.md @@ -183,6 +183,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.ContainerInstance/stable/2019-12-01/containerInstance.json - $(this-folder)/Microsoft.ContainerInstance/stable/2018-10-01/containerInstance.json - $(this-folder)/Microsoft.ContainerInstance/stable/2018-09-01/containerInstance.json - $(this-folder)/Microsoft.ContainerInstance/stable/2018-06-01/containerInstance.json diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json index 2174cc1e0e84..8f4a653587c2 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json @@ -721,11 +721,7 @@ "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "taskRunName", - "in": "path", - "description": "The run request name.", - "required": true, - "type": "string" + "$ref": "#/parameters/TaskRunNameParameter" } ], "responses": { @@ -768,11 +764,7 @@ "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "taskRunName", - "in": "path", - "description": "The name of task run.", - "required": true, - "type": "string" + "$ref": "#/parameters/TaskRunNameParameter" }, { "name": "taskRun", @@ -831,11 +823,7 @@ "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "taskRunName", - "in": "path", - "description": "The task run name.", - "required": true, - "type": "string" + "$ref": "#/parameters/TaskRunNameParameter" } ], "responses": { @@ -882,11 +870,7 @@ "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "taskRunName", - "in": "path", - "description": "The task run name.", - "required": true, - "type": "string" + "$ref": "#/parameters/TaskRunNameParameter" }, { "name": "updateParameters", @@ -947,11 +931,7 @@ "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "taskRunName", - "in": "path", - "description": "The run request name.", - "required": true, - "type": "string" + "$ref": "#/parameters/TaskRunNameParameter" } ], "responses": { @@ -1916,7 +1896,7 @@ "type": "object", "allOf": [ { - "$ref": "#/definitions/Resource" + "$ref": "#/definitions/ProxyResource" } ], "properties": { @@ -1928,6 +1908,10 @@ "$ref": "#/definitions/TaskRunProperties", "description": "The properties associated with the task run, i.e., request and result of the run", "x-ms-client-flatten": true + }, + "location": { + "description": "The location of the resource", + "type": "string" } } }, @@ -2028,6 +2012,10 @@ "description": "The properties for updating a task run.", "x-ms-client-flatten": true }, + "location": { + "description": "The location of the resource", + "type": "string" + }, "tags": { "description": "The ARM resource tags.", "type": "object", @@ -3602,6 +3590,17 @@ "minLength": 3, "pattern": "^[a-zA-Z0-9-]*$", "x-ms-parameter-location": "method" + }, + "TaskRunNameParameter": { + "name": "taskRunName", + "in": "path", + "description": "The name of the task run.", + "required": true, + "type": "string", + "maxLength": 50, + "minLength": 5, + "pattern": "^[a-zA-Z0-9-]*$", + "x-ms-parameter-location": "method" } }, "securityDefinitions": { diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsCreate.json index d3df479742b5..1b95e805388d 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsCreate.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsCreate.json @@ -6,10 +6,6 @@ "api-version": "2019-06-01-preview", "taskRunName": "myRun", "taskRun": { - "location": "westus", - "tags": { - "key": "value" - }, "properties": { "forceUpdateTag": "test", "runRequest": { @@ -67,11 +63,7 @@ } }, "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/taskRuns/myRun", - "name": "myrun", - "tags": { - "key": "value" - }, - "location": "WESTUS" + "name": "myrun" } }, "201": { @@ -114,11 +106,7 @@ } }, "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/taskRuns/myRun", - "name": "myrun", - "tags": { - "key": "value" - }, - "location": "WESTUS" + "name": "myrun" } } } diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsGet.json index 756b24ef7dcd..bf58544d51da 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsGet.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsGet.json @@ -49,11 +49,7 @@ } }, "id": "/subscriptions/3647315e-0c5b-4ce4-8739-b071e144b2c9/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/taskRuns/myRun", - "name": "myRun", - "tags": { - "key": "value" - }, - "location": "WESTUS" + "name": "myRun" } } } diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsGetDetails.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsGetDetails.json index 756b24ef7dcd..bf58544d51da 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsGetDetails.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsGetDetails.json @@ -49,11 +49,7 @@ } }, "id": "/subscriptions/3647315e-0c5b-4ce4-8739-b071e144b2c9/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/taskRuns/myRun", - "name": "myRun", - "tags": { - "key": "value" - }, - "location": "WESTUS" + "name": "myRun" } } } diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsList.json index d573ca7e39b4..2a9eee17142a 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsList.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsList.json @@ -50,11 +50,7 @@ } }, "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/taskRuns/myRun", - "name": "mytestrun", - "tags": { - "key": "value" - }, - "location": "WESTUS" + "name": "mytestrun" } ] } diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsUpdate.json index a629bff26d79..2b6760729d81 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsUpdate.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsUpdate.json @@ -64,11 +64,7 @@ } }, "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/taskRuns/myRun", - "name": "mytestrun", - "tags": { - "key": "value" - }, - "location": "WESTUS" + "name": "mytestrun" } }, "201": { @@ -111,11 +107,7 @@ } }, "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/taskRuns/myRun", - "name": "mytestrun", - "tags": { - "key": "value" - }, - "location": "WESTUS" + "name": "mytestrun" } } } diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/containerregistry.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/containerregistry.json index 6f70e0e72c62..ca69618c4db8 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/containerregistry.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/containerregistry.json @@ -1805,6 +1805,10 @@ } ], "properties": { + "location": { + "description": "The location of the export pipeline.", + "type": "string" + }, "identity": { "$ref": "#/definitions/IdentityProperties", "description": "The identity of the export pipeline." @@ -2037,6 +2041,10 @@ } ], "properties": { + "location": { + "description": "The location of the import pipeline.", + "type": "string" + }, "identity": { "$ref": "#/definitions/IdentityProperties", "description": "The identity of the import pipeline." diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineCreate.json index 9c71dc64f11c..3d394884853c 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineCreate.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineCreate.json @@ -6,6 +6,7 @@ "registryName": "myRegistry", "exportPipelineName": "myExportPipeline", "exportPipelineCreateParameters": { + "location": "westus", "identity": { "type": "SystemAssigned" }, @@ -38,6 +39,7 @@ ], "provisioningState": "Succeeded" }, + "location": "westus", "identity": { "principalId": "fa153151-b9fd-46f4-9088-5e6600f2689v", "tenantId": "f686d426-8d16-42db-81b7-abu4gm510ccd", @@ -61,6 +63,7 @@ ], "provisioningState": "Succeeded" }, + "location": "westus", "identity": { "principalId": "fa153151-b9fd-46f4-9088-5e6600f2689v", "tenantId": "f686d426-8d16-42db-81b7-abu4gm510ccd", diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineGet.json index 6ff81e8d607a..55b55c604b91 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineGet.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineGet.json @@ -23,6 +23,7 @@ ], "provisioningState": "Succeeded" }, + "location": "westus", "identity": { "principalId": "fa153151-b9fd-46f4-9088-5e6600f2689v", "tenantId": "f686d426-8d16-42db-81b7-abu4gm510ccd", diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineList.json index cff4002faea4..e03aa6c5702d 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineList.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ExportPipelineList.json @@ -24,6 +24,7 @@ ], "provisioningState": "Succeeded" }, + "location": "westus", "identity": { "principalId": "fa153151-b9fd-46f4-9088-5e6600f2689v", "tenantId": "f686d426-8d16-42db-81b7-abu4gm510ccd", diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineCreate.json index d348a3e20632..fd0a22d01966 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineCreate.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineCreate.json @@ -6,6 +6,7 @@ "registryName": "myRegistry", "importPipelineName": "myImportPipeline", "importPipelineCreateParameters": { + "location": "westus", "identity": { "type": "UserAssigned", "userAssignedIdentities": { @@ -50,6 +51,7 @@ ], "provisioningState": "Succeeded" }, + "location": "westus", "identity": { "type": "UserAssigned", "userAssignedIdentities": { @@ -84,6 +86,7 @@ ], "provisioningState": "Succeeded" }, + "location": "westus", "identity": { "type": "UserAssigned", "userAssignedIdentities": { diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineGet.json index f0d7d584162f..eb62462be762 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineGet.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineGet.json @@ -30,6 +30,7 @@ ], "provisioningState": "Succeeded" }, + "location": "westus", "identity": { "type": "UserAssigned", "userAssignedIdentities": { diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineList.json index 70b5b1c3fd11..f704423f9a2a 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineList.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/ImportPipelineList.json @@ -31,6 +31,7 @@ ], "provisioningState": "Succeeded" }, + "location": "westus", "identity": { "type": "UserAssigned", "userAssignedIdentities": { diff --git a/specification/cosmos-db/data-plane/readme.go.md b/specification/cosmos-db/data-plane/readme.go.md index e8b63caff258..610b160a3ccf 100644 --- a/specification/cosmos-db/data-plane/readme.go.md +++ b/specification/cosmos-db/data-plane/readme.go.md @@ -22,5 +22,5 @@ These settings apply only when `--tag=package-2019-02 --go` is specified on the Please also specify `--go-sdk-folder=`. ``` yaml $(tag) == 'package-2019-02' && $(go) -output-folder: $(go-sdk-folder)/services/storage/tables/2019-02-02/$(namespace) +output-folder: $(go-sdk-folder)/services/preview/storage/tables/2019-02-02-preview/$(namespace) ``` \ No newline at end of file diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/cosmos-db.json index e648003dc480..8e42d573e5d8 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/cosmos-db.json @@ -1680,6 +1680,86 @@ } } }, + "/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" + } + } + } + } + }, + "/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" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers": { "get": { "operationId": "SqlResources_ListSqlContainers", @@ -1935,6 +2015,92 @@ } } }, + "/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" + } + } + } + } + }, + "/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" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/storedProcedures": { "get": { "operationId": "SqlResources_ListSqlStoredProcedures", @@ -2706,6 +2872,86 @@ } } }, + "/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" + } + } + } + } + }, + "/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" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections": { "get": { "operationId": "MongoDBResources_ListMongoDBCollections", @@ -2961,15 +3207,16 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables": { - "get": { - "operationId": "TableResources_ListTables", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBCollectionToAutoscale", "x-ms-examples": { - "CosmosDBTableList": { - "$ref": "./examples/CosmosDBTableList.json" + "CosmosDBMongoDBCollectionMigrateToAutoscale": { + "$ref": "./examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json" } }, - "description": "Lists the Tables under an existing Azure Cosmos DB database account.", + "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" @@ -2980,32 +3227,39 @@ { "$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 Table properties were retrieved successfully.", + "description": "The MongoDB collection migrate operation was completed successfully.", "schema": { - "$ref": "#/definitions/TableListResult" + "$ref": "#/definitions/ThroughputSettingsGetResults" } } - }, - "x-ms-pageable": { - "nextLinkName": null } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}": { - "get": { - "operationId": "TableResources_GetTable", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBCollectionToManualThroughput", "x-ms-examples": { - "CosmosDBTableGet": { - "$ref": "./examples/CosmosDBTableGet.json" + "CosmosDBMongoDBCollectionMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json" } }, - "description": "Gets the Tables under an existing Azure Cosmos DB database account with the provided name.", + "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" @@ -3017,26 +3271,104 @@ "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/tableNameParameter" + "$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 Table property was retrieved successfully.", + "description": "The MongoDB collection migrate operation was completed successfully.", "schema": { - "$ref": "#/definitions/TableGetResults" + "$ref": "#/definitions/ThroughputSettingsGetResults" } } } - }, - "put": { - "operationId": "TableResources_CreateUpdateTable", + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables": { + "get": { + "operationId": "TableResources_ListTables", "x-ms-examples": { - "CosmosDBTableReplace": { - "$ref": "./examples/CosmosDBTableCreateUpdate.json" + "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", @@ -3198,6 +3530,86 @@ } } }, + "/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" + } + } + } + } + }, + "/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" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces": { "get": { "operationId": "CassandraResources_ListCassandraKeyspaces", @@ -3435,6 +3847,86 @@ } } }, + "/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" + } + } + } + } + }, + "/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" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables": { "get": { "operationId": "CassandraResources_ListCassandraTables", @@ -3690,6 +4182,92 @@ } } }, + "/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" + } + } + } + } + }, + "/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" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases": { "get": { "operationId": "GremlinResources_ListGremlinDatabases", @@ -3927,6 +4505,86 @@ } } }, + "/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" + } + } + } + } + }, + "/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" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs": { "get": { "operationId": "GremlinResources_ListGremlinGraphs", @@ -4181,6 +4839,92 @@ } } } + }, + "/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" + } + } + } + } + }, + "/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" + } + } + } + } } }, "definitions": { diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json new file mode 100644 index 000000000000..866e06dd99c2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "provisionedThroughputSettings": { + "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/2020-03-01/examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json new file mode 100644 index 000000000000..ddd5b858f647 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "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/2020-03-01/examples/CosmosDBCassandraTableMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableMigrateToAutoscale.json new file mode 100644 index 000000000000..8f57f7e942ac --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "provisionedThroughputSettings": { + "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/2020-03-01/examples/CosmosDBCassandraTableMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableMigrateToManualThroughput.json new file mode 100644 index 000000000000..f901199a4d11 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "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/2020-03-01/examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json new file mode 100644 index 000000000000..c8fada5aa737 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "provisionedThroughputSettings": { + "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/2020-03-01/examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json new file mode 100644 index 000000000000..9daa31f2fa84 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "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/2020-03-01/examples/CosmosDBGremlinGraphMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphMigrateToAutoscale.json new file mode 100644 index 000000000000..0c9f21ef808a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "provisionedThroughputSettings": { + "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/2020-03-01/examples/CosmosDBGremlinGraphMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphMigrateToManualThroughput.json new file mode 100644 index 000000000000..7ebda5fed28d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "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/2020-03-01/examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json new file mode 100644 index 000000000000..61cce1fbda6f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "provisionedThroughputSettings": { + "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/2020-03-01/examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json new file mode 100644 index 000000000000..ea8fd74be2f5 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "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/2020-03-01/examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json new file mode 100644 index 000000000000..c8fada5aa737 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "provisionedThroughputSettings": { + "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/2020-03-01/examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json new file mode 100644 index 000000000000..9daa31f2fa84 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "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/2020-03-01/examples/CosmosDBSqlContainerMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerMigrateToAutoscale.json new file mode 100644 index 000000000000..847f6a543506 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "provisionedThroughputSettings": { + "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/2020-03-01/examples/CosmosDBSqlContainerMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerMigrateToManualThroughput.json new file mode 100644 index 000000000000..51092efb4b2f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "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/2020-03-01/examples/CosmosDBSqlDatabaseMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseMigrateToAutoscale.json new file mode 100644 index 000000000000..c8fada5aa737 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "provisionedThroughputSettings": { + "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/2020-03-01/examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json new file mode 100644 index 000000000000..9daa31f2fa84 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "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/2020-03-01/examples/CosmosDBTableMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableMigrateToAutoscale.json new file mode 100644 index 000000000000..ac94982bfade --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "properties": { + "resource": { + "throughput": 400, + "provisionedThroughputSettings": { + "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/2020-03-01/examples/CosmosDBTableMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableMigrateToManualThroughput.json new file mode 100644 index 000000000000..8fd6d3a8313f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "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/2020-04-01/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/cosmos-db.json index 6e73ccd40325..d42b4c445ae0 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/cosmos-db.json @@ -1680,6 +1680,86 @@ } } }, + "/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" + } + } + } + } + }, + "/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" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers": { "get": { "operationId": "SqlResources_ListSqlContainers", @@ -1935,6 +2015,92 @@ } } }, + "/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" + } + } + } + } + }, + "/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" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/storedProcedures": { "get": { "operationId": "SqlResources_ListSqlStoredProcedures", @@ -2706,6 +2872,86 @@ } } }, + "/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" + } + } + } + } + }, + "/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" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections": { "get": { "operationId": "MongoDBResources_ListMongoDBCollections", @@ -2961,15 +3207,16 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables": { - "get": { - "operationId": "TableResources_ListTables", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default/migrateToAutoscale": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBCollectionToAutoscale", "x-ms-examples": { - "CosmosDBTableList": { - "$ref": "./examples/CosmosDBTableList.json" + "CosmosDBMongoDBCollectionMigrateToAutoscale": { + "$ref": "./examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json" } }, - "description": "Lists the Tables under an existing Azure Cosmos DB database account.", + "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" @@ -2980,32 +3227,39 @@ { "$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 Table properties were retrieved successfully.", + "description": "The MongoDB collection migrate operation was completed successfully.", "schema": { - "$ref": "#/definitions/TableListResult" + "$ref": "#/definitions/ThroughputSettingsGetResults" } } - }, - "x-ms-pageable": { - "nextLinkName": null } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}": { - "get": { - "operationId": "TableResources_GetTable", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default/migrateToManualThroughput": { + "post": { + "operationId": "MongoDBResources_MigrateMongoDBCollectionToManualThroughput", "x-ms-examples": { - "CosmosDBTableGet": { - "$ref": "./examples/CosmosDBTableGet.json" + "CosmosDBMongoDBCollectionMigrateToManualThroughput": { + "$ref": "./examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json" } }, - "description": "Gets the Tables under an existing Azure Cosmos DB database account with the provided name.", + "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" @@ -3017,26 +3271,104 @@ "$ref": "#/parameters/accountNameParameter" }, { - "$ref": "#/parameters/tableNameParameter" + "$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 Table property was retrieved successfully.", + "description": "The MongoDB collection migrate operation was completed successfully.", "schema": { - "$ref": "#/definitions/TableGetResults" + "$ref": "#/definitions/ThroughputSettingsGetResults" } } } - }, - "put": { - "operationId": "TableResources_CreateUpdateTable", + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables": { + "get": { + "operationId": "TableResources_ListTables", "x-ms-examples": { - "CosmosDBTableReplace": { - "$ref": "./examples/CosmosDBTableCreateUpdate.json" + "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", @@ -3198,6 +3530,86 @@ } } }, + "/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" + } + } + } + } + }, + "/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" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces": { "get": { "operationId": "CassandraResources_ListCassandraKeyspaces", @@ -3435,6 +3847,86 @@ } } }, + "/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" + } + } + } + } + }, + "/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" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables": { "get": { "operationId": "CassandraResources_ListCassandraTables", @@ -3690,6 +4182,92 @@ } } }, + "/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" + } + } + } + } + }, + "/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" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases": { "get": { "operationId": "GremlinResources_ListGremlinDatabases", @@ -3927,6 +4505,86 @@ } } }, + "/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" + } + } + } + } + }, + "/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" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs": { "get": { "operationId": "GremlinResources_ListGremlinGraphs", @@ -4181,6 +4839,92 @@ } } } + }, + "/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" + } + } + } + } + }, + "/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" + } + } + } + } } }, "definitions": { diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json new file mode 100644 index 000000000000..7014132ba922 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBCassandraKeyspaceMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "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/2020-04-01/examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json new file mode 100644 index 000000000000..c1d7adb55be3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBCassandraKeyspaceMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "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/2020-04-01/examples/CosmosDBCassandraTableMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBCassandraTableMigrateToAutoscale.json new file mode 100644 index 000000000000..268bb531bda3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBCassandraTableMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "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/2020-04-01/examples/CosmosDBCassandraTableMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBCassandraTableMigrateToManualThroughput.json new file mode 100644 index 000000000000..a61aa9159b8f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBCassandraTableMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "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/2020-04-01/examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json new file mode 100644 index 000000000000..92b77f53e656 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBGremlinDatabaseMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "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/2020-04-01/examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json new file mode 100644 index 000000000000..fe3611022024 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBGremlinDatabaseMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "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/2020-04-01/examples/CosmosDBGremlinGraphMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBGremlinGraphMigrateToAutoscale.json new file mode 100644 index 000000000000..3548d0c0e8d7 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBGremlinGraphMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "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/2020-04-01/examples/CosmosDBGremlinGraphMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBGremlinGraphMigrateToManualThroughput.json new file mode 100644 index 000000000000..d604a817c552 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBGremlinGraphMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "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/2020-04-01/examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json new file mode 100644 index 000000000000..dff0916f8388 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBMongoDBCollectionMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "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/2020-04-01/examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json new file mode 100644 index 000000000000..a6a1b7fea40d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBMongoDBCollectionMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "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/2020-04-01/examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json new file mode 100644 index 000000000000..92b77f53e656 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBMongoDBDatabaseMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "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/2020-04-01/examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json new file mode 100644 index 000000000000..fe3611022024 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBMongoDBDatabaseMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "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/2020-04-01/examples/CosmosDBSqlContainerMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBSqlContainerMigrateToAutoscale.json new file mode 100644 index 000000000000..5d5362d1f905 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBSqlContainerMigrateToAutoscale.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "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/2020-04-01/examples/CosmosDBSqlContainerMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBSqlContainerMigrateToManualThroughput.json new file mode 100644 index 000000000000..014d732eb7e0 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBSqlContainerMigrateToManualThroughput.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "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/2020-04-01/examples/CosmosDBSqlDatabaseMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBSqlDatabaseMigrateToAutoscale.json new file mode 100644 index 000000000000..92b77f53e656 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBSqlDatabaseMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "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/2020-04-01/examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json new file mode 100644 index 000000000000..fe3611022024 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBSqlDatabaseMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "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/2020-04-01/examples/CosmosDBTableMigrateToAutoscale.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBTableMigrateToAutoscale.json new file mode 100644 index 000000000000..c8b8a1a9f94a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBTableMigrateToAutoscale.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "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/2020-04-01/examples/CosmosDBTableMigrateToManualThroughput.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBTableMigrateToManualThroughput.json new file mode 100644 index 000000000000..8d8dd974645f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-04-01/examples/CosmosDBTableMigrateToManualThroughput.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-04-01", + "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/readme.md b/specification/cosmos-db/resource-manager/readme.md index 4d1ab2248832..3319ea5bcd1a 100644 --- a/specification/cosmos-db/resource-manager/readme.md +++ b/specification/cosmos-db/resource-manager/readme.md @@ -280,10 +280,10 @@ require: $(this-folder)/../../../profiles/readme.md input-file: - $(this-folder)/Microsoft.DocumentDB/preview/2020-06-01-preview/cosmos-db.json - $(this-folder)/Microsoft.DocumentDB/preview/2020-06-01-preview/notebook.json - - $(this-folder)/Microsoft.DocumentDB/stable/2020-04-01/cosmos-db.json - - $(this-folder)/Microsoft.DocumentDB/stable/2020-04-01/notebook.json - $(this-folder)/Microsoft.DocumentDB/preview/2019-08-01-preview/privateLinkResources.json - $(this-folder)/Microsoft.DocumentDB/preview/2019-08-01-preview/privateEndpointConnection.json + - $(this-folder)/Microsoft.DocumentDB/stable/2020-04-01/cosmos-db.json + - $(this-folder)/Microsoft.DocumentDB/stable/2020-04-01/notebook.json - $(this-folder)/Microsoft.DocumentDB/stable/2020-03-01/cosmos-db.json - $(this-folder)/Microsoft.DocumentDB/stable/2020-03-01/notebook.json - $(this-folder)/Microsoft.DocumentDB/stable/2019-12-12/cosmos-db.json diff --git a/specification/databoxedge/resource-manager/readme.md b/specification/databoxedge/resource-manager/readme.md index beec4161964b..525e9e046a23 100644 --- a/specification/databoxedge/resource-manager/readme.md +++ b/specification/databoxedge/resource-manager/readme.md @@ -208,6 +208,7 @@ input-file: - $(this-folder)/Microsoft.DataBoxEdge/stable/2019-08-01/databoxedge.json - $(this-folder)/Microsoft.DataBoxEdge/stable/2019-07-01/databoxedge.json - $(this-folder)/Microsoft.DataBoxEdge/stable/2019-03-01/databoxedge.json + ``` If there are files that should not be in the `all-api-versions` set, 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 3c76405d3f4f..348cc61d5dfa 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 @@ -835,6 +835,10 @@ }, "WorkspaceCustomParameters": { "properties": { + "amlWorkspaceId": { + "$ref": "#/definitions/WorkspaceCustomStringParameter", + "description": "The ID of a Azure Machine Learning workspace to link with Databricks workspace" + }, "customVirtualNetworkId": { "$ref": "#/definitions/WorkspaceCustomStringParameter", "description": "The ID of a Virtual Network where this Databricks Cluster should be created" @@ -858,6 +862,10 @@ "encryption": { "$ref": "#/definitions/WorkspaceEncryptionParameter", "description": "Contains the encryption details for Customer-Managed Key (CMK) enabled workspace." + }, + "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." } }, "description": "Custom Parameters used for Cluster Creation." diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json index e46d6181e288..8ac8e38601ed 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json @@ -3098,6 +3098,51 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}/triggers/{triggerName}/triggerRuns/{runId}/cancel": { + "post": { + "tags": [ + "triggerruns" + ], + "operationId": "TriggerRuns_Cancel", + "x-ms-examples": { + "Triggers_Rerun": { + "$ref": "./examples/TriggerRuns_Cancel.json" + } + }, + "description": "Cancel a single trigger instance by runId.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/factoryName" + }, + { + "$ref": "#/parameters/triggerName" + }, + { + "$ref": "#/parameters/runId" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "TriggerRun has been cancelled." + }, + "default": { + "description": "An error response received from the Azure Data Factory service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}/queryTriggerRuns": { "post": { "tags": [ 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 ceff9b5698d1..a25553b01b00 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 @@ -162,6 +162,10 @@ "type": "object", "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." }, + "azureCloudType": { + "type": "object", + "description": "Indicates the azure cloud type of the service principle auth. Allowed values are AzurePublic, AzureChina, AzureUsGovernment, AzureGermany. Default value is the data factory regions’ cloud type. Type: string (or Expression with resultType string)." + }, "encryptedCredential": { "type": "string", "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." @@ -211,6 +215,10 @@ "type": "object", "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." }, + "azureCloudType": { + "type": "object", + "description": "Indicates the azure cloud type of the service principle auth. Allowed values are AzurePublic, AzureChina, AzureUsGovernment, AzureGermany. Default value is the data factory regions’ cloud type. Type: string (or Expression with resultType string)." + }, "encryptedCredential": { "type": "object", "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." @@ -307,6 +315,10 @@ "type": "object", "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." }, + "azureCloudType": { + "type": "object", + "description": "Indicates the azure cloud type of the service principle auth. Allowed values are AzurePublic, AzureChina, AzureUsGovernment, AzureGermany. Default value is the data factory regions’ cloud type. Type: string (or Expression with resultType string)." + }, "encryptedCredential": { "type": "object", "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." @@ -359,6 +371,10 @@ "type": "object", "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." }, + "azureCloudType": { + "type": "object", + "description": "Indicates the azure cloud type of the service principle auth. Allowed values are AzurePublic, AzureChina, AzureUsGovernment, AzureGermany. Default value is the data factory regions’ cloud type. Type: string (or Expression with resultType string)." + }, "encryptedCredential": { "type": "object", "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." @@ -965,6 +981,10 @@ "description": "The azure file share name. It is required when auth with accountKey/sasToken. Type: string (or Expression with resultType string).", "type": "object" }, + "snapshot": { + "description": "The azure file share snapshot version. Type: string (or Expression with resultType string).", + "type": "object" + }, "encryptedCredential": { "type": "object", "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." @@ -1739,6 +1759,10 @@ "type": "object", "description": "Specify the application id of your application registered in Azure Active Directory. Type: string (or Expression with resultType string)." }, + "azureCloudType": { + "type": "object", + "description": "Indicates the azure cloud type of the service principle auth. Allowed values are AzurePublic, AzureChina, AzureUsGovernment, AzureGermany. Default value is the data factory regions’ cloud type. Type: string (or Expression with resultType string)." + }, "aadResourceId": { "type": "object", "description": "Specify the resource you are requesting authorization to use Directory. Type: string (or Expression with resultType string)." @@ -2120,6 +2144,10 @@ "type": "object", "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." }, + "azureCloudType": { + "type": "object", + "description": "Indicates the azure cloud type of the service principle auth. Allowed values are AzurePublic, AzureChina, AzureUsGovernment, AzureGermany. Default value is the data factory regions’ cloud type. Type: string (or Expression with resultType string)." + }, "accountName": { "type": "object", "description": "Data Lake Store account name. Type: string (or Expression with resultType string)." @@ -2184,6 +2212,10 @@ "type": "object", "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." }, + "azureCloudType": { + "type": "object", + "description": "Indicates the azure cloud type of the service principle auth. Allowed values are AzurePublic, AzureChina, AzureUsGovernment, AzureGermany. Default value is the data factory regions’ cloud type. Type: string (or Expression with resultType string)." + }, "encryptedCredential": { "type": "object", "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." @@ -2568,6 +2600,10 @@ "description": "The tenant information (domain name or tenant ID) used in AadServicePrincipal authentication type under which your application resides.", "type": "object" }, + "azureCloudType": { + "type": "object", + "description": "Indicates the azure cloud type of the service principle auth. Allowed values are AzurePublic, AzureChina, AzureUsGovernment, AzureGermany. Default value is the data factory regions’ cloud type. Type: string (or Expression with resultType string)." + }, "aadResourceId": { "description": "The resource you are requesting authorization to use.", "type": "object" 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 8403e4ac0fcb..e7963bb5c123 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 @@ -1962,6 +1962,14 @@ "baseRequestId": { "type": "object", "description": "The ID of request for delta loading. Once it is set, only data with requestId larger than the value of this property will be retrieved. The default value is 0. Type: integer (or Expression with resultType integer )." + }, + "customRfcReadTableFunctionModule": { + "type": "object", + "description": "Specifies the custom RFC function module that will be used to read data from SAP Table. Type: string (or Expression with resultType string)." + }, + "sapDataColumnDelimiter": { + "type": "object", + "description": "The single character that will be used as delimiter passed to SAP RFC as well as splitting the output data retrieved. Type: string (or Expression with resultType string)." } } }, @@ -1998,6 +2006,10 @@ "type": "object", "description": "Specifies the custom RFC function module that will be used to read data from SAP Table. Type: string (or Expression with resultType string)." }, + "sapDataColumnDelimiter": { + "type": "object", + "description": "The single character that will be used as delimiter passed to SAP RFC as well as splitting the output data retrieved. Type: string (or Expression with resultType string)." + }, "partitionOption": { "description": "The partition mechanism that will be used for SAP table read in parallel.", "type": "string", @@ -6574,7 +6586,7 @@ }, "reportStatusOnCallBack": { "type": "object", - "description": "When set to true, statusCode, output and error in callback request body will be consumed by activity. The activity can be marked as failed by setting statusCode >= 400 in callback request. Default is false. Type: boolean (or Expression with resultType boolean)." + "description": "When set to true, statusCode, output and error in callback request body will be consumed by activity. The activity can be marked as failed by setting statusCode >= 400 in callback request. Default is false. Type: boolean (or Expression with resultType boolean)." } }, "required": [ diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/TriggerRuns_Cancel.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/TriggerRuns_Cancel.json new file mode 100644 index 000000000000..b06046f294f8 --- /dev/null +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/TriggerRuns_Cancel.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "factoryName": "exampleFactoryName", + "triggerName": "exampleTrigger", + "runId": "2f7fdb90-5df1-4b8e-ac2f-064cfa58202b", + "api-version": "2018-06-01" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:46:24 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1198", + "x-ms-request-id": "5aa854a5-7ac0-4c7e-9356-79c657f4e231", + "x-ms-correlation-request-id": "5aa854a5-7ac0-4c7e-9356-79c657f4e231" + } + } + } +} diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/DataShare.json b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/DataShare.json index 16a12f490476..8a7e7d21fe20 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/DataShare.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/DataShare.json @@ -16,6 +16,53 @@ "application/json" ], "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.DataShare/accounts": { + "get": { + "tags": [ + "Account" + ], + "summary": "List Accounts in a subscription", + "description": "List Accounts in Subscription", + "operationId": "Accounts_ListBySubscription", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "$skipToken", + "in": "query", + "description": "Continuation token", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AccountList" + } + }, + "default": { + "description": "An error response received from the Microsoft.DataShare resource provider.", + "schema": { + "$ref": "#/definitions/DataShareError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Accounts_ListBySubscription": { + "$ref": "./examples/Accounts_ListBySubscription.json" + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}": { "get": { "tags": [ @@ -214,53 +261,6 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.DataShare/accounts": { - "get": { - "tags": [ - "Account" - ], - "summary": "List Accounts in a subscription", - "description": "List Accounts in Subscription", - "operationId": "Accounts_ListBySubscription", - "parameters": [ - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/api-version" - }, - { - "name": "$skipToken", - "in": "query", - "description": "Continuation token", - "required": false, - "type": "string" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/AccountList" - } - }, - "default": { - "description": "An error response received from the Microsoft.DataShare resource provider.", - "schema": { - "$ref": "#/definitions/DataShareError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Accounts_ListBySubscription": { - "$ref": "./examples/Accounts_ListBySubscription.json" - } - } - } - }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts": { "get": { "tags": [ @@ -311,40 +311,31 @@ } } }, - "/providers/Microsoft.DataShare/locations/{location}/RejectInvitation": { - "post": { + "/providers/Microsoft.DataShare/ListInvitations": { + "get": { "tags": [ "ConsumerInvitation" ], - "summary": "Rejects the invitation identified by invitationId", - "description": "Reject an invitation", - "operationId": "ConsumerInvitations_RejectInvitation", + "summary": "List the invitations", + "description": "Lists invitations", + "operationId": "ConsumerInvitations_ListInvitations", "parameters": [ { - "name": "location", - "in": "path", - "description": "Location of the invitation", - "required": true, - "type": "string" - }, - { - "name": "invitation", - "in": "body", - "description": "An invitation payload", - "required": true, - "schema": { - "$ref": "#/definitions/ConsumerInvitation" - } + "$ref": "#/parameters/api-version" }, { - "$ref": "#/parameters/api-version" + "name": "$skipToken", + "in": "query", + "description": "The continuation token", + "required": false, + "type": "string" } ], "responses": { "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ConsumerInvitation" + "$ref": "#/definitions/ConsumerInvitationList" } }, "default": { @@ -354,9 +345,12 @@ } } }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { - "ConsumerInvitations_RejectInvitation": { - "$ref": "./examples/ConsumerInvitations_RejectInvitation.json" + "ConsumerInvitations_ListInvitations": { + "$ref": "./examples/ConsumerInvitations_ListInvitations.json" } } } @@ -409,31 +403,40 @@ } } }, - "/providers/Microsoft.DataShare/ListInvitations": { - "get": { + "/providers/Microsoft.DataShare/locations/{location}/RejectInvitation": { + "post": { "tags": [ "ConsumerInvitation" ], - "summary": "List the invitations", - "description": "Lists invitations", - "operationId": "ConsumerInvitations_ListInvitations", + "summary": "Rejects the invitation identified by invitationId", + "description": "Reject an invitation", + "operationId": "ConsumerInvitations_RejectInvitation", "parameters": [ { - "$ref": "#/parameters/api-version" + "name": "location", + "in": "path", + "description": "Location of the invitation", + "required": true, + "type": "string" }, { - "name": "$skipToken", - "in": "query", - "description": "The continuation token", - "required": false, - "type": "string" + "name": "invitation", + "in": "body", + "description": "An invitation payload", + "required": true, + "schema": { + "$ref": "#/definitions/ConsumerInvitation" + } + }, + { + "$ref": "#/parameters/api-version" } ], "responses": { "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ConsumerInvitationList" + "$ref": "#/definitions/ConsumerInvitation" } }, "default": { @@ -443,12 +446,9 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, "x-ms-examples": { - "ConsumerInvitations_ListInvitations": { - "$ref": "./examples/ConsumerInvitations_ListInvitations.json" + "ConsumerInvitations_RejectInvitation": { + "$ref": "./examples/ConsumerInvitations_RejectInvitation.json" } } } @@ -685,6 +685,20 @@ "description": "continuation token", "required": false, "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "Filters the results using OData syntax.", + "required": false, + "type": "string" + }, + { + "name": "$orderby", + "in": "query", + "description": "Sorts the results using OData syntax.", + "required": false, + "type": "string" } ], "responses": { @@ -936,6 +950,20 @@ "description": "Continuation token", "required": false, "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "Filters the results using OData syntax.", + "required": false, + "type": "string" + }, + { + "name": "$orderby", + "in": "query", + "description": "Sorts the results using OData syntax.", + "required": false, + "type": "string" } ], "responses": { @@ -1178,6 +1206,20 @@ "description": "The continuation token", "required": false, "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "Filters the results using OData syntax.", + "required": false, + "type": "string" + }, + { + "name": "$orderby", + "in": "query", + "description": "Sorts the results using OData syntax.", + "required": false, + "type": "string" } ], "responses": { @@ -1241,14 +1283,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}/listSynchronizationDetails": { + "post": { "tags": [ "Share" ], - "summary": "Get a specified share", - "description": "Get a share ", - "operationId": "Shares_Get", + "summary": "List data set level details for a share synchronization", + "description": "List synchronization details", + "operationId": "Shares_ListSynchronizationDetails", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -1262,19 +1304,49 @@ { "name": "shareName", "in": "path", - "description": "The name of the share to retrieve.", + "description": "The name of the share.", "required": true, "type": "string" }, + { + "name": "shareSynchronization", + "in": "body", + "description": "Share Synchronization payload.", + "required": true, + "schema": { + "$ref": "#/definitions/ShareSynchronization" + } + }, { "$ref": "#/parameters/api-version" + }, + { + "name": "$skipToken", + "in": "query", + "description": "Continuation token", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "Filters the results using OData syntax.", + "required": false, + "type": "string" + }, + { + "name": "$orderby", + "in": "query", + "description": "Sorts the results using OData syntax.", + "required": false, + "type": "string" } ], "responses": { "200": { "description": "Success", "schema": { - "$ref": "#/definitions/Share" + "$ref": "#/definitions/SynchronizationDetailsList" } }, "default": { @@ -1284,82 +1356,24 @@ } } }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { - "Shares_Get": { - "$ref": "./examples/Shares_Get.json" + "Shares_ListSynchronizationDetails": { + "$ref": "./examples/Shares_ListSynchronizationDetails.json" } } - }, - "put": { - "tags": [ - "Share" - ], - "summary": "Create a share in the given account.", - "description": "Create a share ", - "operationId": "Shares_Create", - "parameters": [ - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - }, - { - "$ref": "#/parameters/accountName" - }, - { - "name": "shareName", - "in": "path", - "description": "The name of the share.", - "required": true, - "type": "string" - }, - { - "name": "share", - "in": "body", - "description": "The share payload", - "required": true, - "schema": { - "$ref": "#/definitions/Share" - } - }, - { - "$ref": "#/parameters/api-version" - } - ], - "responses": { - "201": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Share" - } - }, - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Share" - } - }, - "default": { - "description": "An error response received from the Microsoft.DataShare resource provider.", - "schema": { - "$ref": "#/definitions/DataShareError" - } - } - }, - "x-ms-examples": { - "Shares_Create": { - "$ref": "./examples/Shares_Create.json" - } - } - }, - "delete": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}/listSynchronizations": { + "post": { "tags": [ "Share" ], - "summary": "Deletes a share", - "description": "Delete a share ", - "operationId": "Shares_Delete", + "summary": "List Synchronizations in a share", + "description": "List synchronizations of a share", + "operationId": "Shares_ListSynchronizations", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -1379,61 +1393,25 @@ }, { "$ref": "#/parameters/api-version" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/OperationResponse" - } - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "Success" - }, - "default": { - "description": "An error response received from the Microsoft.DataShare resource provider.", - "schema": { - "$ref": "#/definitions/DataShareError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Shares_Delete": { - "$ref": "./examples/Shares_Delete.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares": { - "get": { - "tags": [ - "Share" - ], - "summary": "List of available shares under an account.", - "description": "List shares in an account", - "operationId": "Shares_ListByAccount", - "parameters": [ - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" }, { - "$ref": "#/parameters/accountName" + "name": "$skipToken", + "in": "query", + "description": "Continuation token", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/api-version" + "name": "$filter", + "in": "query", + "description": "Filters the results using OData syntax.", + "required": false, + "type": "string" }, { - "name": "$skipToken", + "name": "$orderby", "in": "query", - "description": "Continuation Token", + "description": "Sorts the results using OData syntax.", "required": false, "type": "string" } @@ -1442,7 +1420,7 @@ "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ShareList" + "$ref": "#/definitions/ShareSynchronizationList" } }, "default": { @@ -1456,20 +1434,20 @@ "nextLinkName": "nextLink" }, "x-ms-examples": { - "Shares_ListByAccount": { - "$ref": "./examples/Shares_ListByAccount.json" + "Shares_ListSynchronizations": { + "$ref": "./examples/Shares_ListSynchronizations.json" } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}/listSynchronizations": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}/providerShareSubscriptions/{providerShareSubscriptionId}/reinstate": { "post": { "tags": [ "Share" ], - "summary": "List Synchronizations in a share", - "description": "List synchronizations of a share", - "operationId": "Shares_ListSynchronizations", + "summary": "Reinstate share subscription in a provider share.", + "description": "Reinstate share subscription in a provider share", + "operationId": "ProviderShareSubscriptions_Reinstate", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -1488,21 +1466,21 @@ "type": "string" }, { - "$ref": "#/parameters/api-version" + "name": "providerShareSubscriptionId", + "in": "path", + "description": "To locate shareSubscription", + "required": true, + "type": "string" }, { - "name": "$skipToken", - "in": "query", - "description": "Continuation token", - "required": false, - "type": "string" + "$ref": "#/parameters/api-version" } ], "responses": { "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ShareSynchronizationList" + "$ref": "#/definitions/ProviderShareSubscription" } }, "default": { @@ -1512,24 +1490,21 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, "x-ms-examples": { - "Shares_ListSynchronizations": { - "$ref": "./examples/Shares_ListSynchronizations.json" + "ProviderShareSubscriptions_Reinstate": { + "$ref": "./examples/ProviderShareSubscriptions_Reinstate.json" } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}/listSynchronizationDetails": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}/providerShareSubscriptions/{providerShareSubscriptionId}/revoke": { "post": { "tags": [ "Share" ], - "summary": "List data set level details for a share synchronization", - "description": "List synchronization details", - "operationId": "Shares_ListSynchronizationDetails", + "summary": "Revoke share subscription in a provider share.", + "description": "Revoke share subscription in a provider share", + "operationId": "ProviderShareSubscriptions_Revoke", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -1548,30 +1523,27 @@ "type": "string" }, { - "name": "shareSynchronization", - "in": "body", - "description": "Share Synchronization payload.", + "name": "providerShareSubscriptionId", + "in": "path", + "description": "To locate shareSubscription", "required": true, - "schema": { - "$ref": "#/definitions/ShareSynchronization" - } + "type": "string" }, { "$ref": "#/parameters/api-version" - }, - { - "name": "$skipToken", - "in": "query", - "description": "Continuation token", - "required": false, - "type": "string" } ], "responses": { "200": { "description": "Success", "schema": { - "$ref": "#/definitions/SynchronizationDetailsList" + "$ref": "#/definitions/ProviderShareSubscription" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/ProviderShareSubscription" } }, "default": { @@ -1581,12 +1553,13 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" }, "x-ms-examples": { - "Shares_ListSynchronizationDetails": { - "$ref": "./examples/Shares_ListSynchronizationDetails.json" + "ProviderShareSubscriptions_Revoke": { + "$ref": "./examples/ProviderShareSubscriptions_Revoke.json" } } } @@ -1708,14 +1681,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}/providerShareSubscriptions/{providerShareSubscriptionId}/revoke": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}": { + "get": { "tags": [ "Share" ], - "summary": "Revoke share subscription in a provider share.", - "description": "Revoke share subscription in a provider share", - "operationId": "ProviderShareSubscriptions_Revoke", + "summary": "Get a specified share", + "description": "Get a share ", + "operationId": "Shares_Get", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -1729,14 +1702,7 @@ { "name": "shareName", "in": "path", - "description": "The name of the share.", - "required": true, - "type": "string" - }, - { - "name": "providerShareSubscriptionId", - "in": "path", - "description": "To locate shareSubscription", + "description": "The name of the share to retrieve.", "required": true, "type": "string" }, @@ -1748,13 +1714,7 @@ "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ProviderShareSubscription" - } - }, - "202": { - "description": "Accepted", - "schema": { - "$ref": "#/definitions/ProviderShareSubscription" + "$ref": "#/definitions/Share" } }, "default": { @@ -1764,25 +1724,19 @@ } } }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" - }, "x-ms-examples": { - "ProviderShareSubscriptions_Revoke": { - "$ref": "./examples/ProviderShareSubscriptions_Revoke.json" + "Shares_Get": { + "$ref": "./examples/Shares_Get.json" } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}/providerShareSubscriptions/{providerShareSubscriptionId}/reinstate": { - "post": { + }, + "put": { "tags": [ "Share" ], - "summary": "Reinstate share subscription in a provider share.", - "description": "Reinstate share subscription in a provider share", - "operationId": "ProviderShareSubscriptions_Reinstate", + "summary": "Create a share in the given account.", + "description": "Create a share ", + "operationId": "Shares_Create", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -1801,21 +1755,29 @@ "type": "string" }, { - "name": "providerShareSubscriptionId", - "in": "path", - "description": "To locate shareSubscription", + "name": "share", + "in": "body", + "description": "The share payload", "required": true, - "type": "string" + "schema": { + "$ref": "#/definitions/Share" + } }, { "$ref": "#/parameters/api-version" } ], "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Share" + } + }, "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ProviderShareSubscription" + "$ref": "#/definitions/Share" } }, "default": { @@ -1826,20 +1788,18 @@ } }, "x-ms-examples": { - "ProviderShareSubscriptions_Reinstate": { - "$ref": "./examples/ProviderShareSubscriptions_Reinstate.json" + "Shares_Create": { + "$ref": "./examples/Shares_Create.json" } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions/{shareSubscriptionName}": { - "get": { + }, + "delete": { "tags": [ - "ShareSubscription" + "Share" ], - "summary": "Get shareSubscription in an account.", - "description": "Get a shareSubscription in an account", - "operationId": "ShareSubscriptions_Get", + "summary": "Deletes a share", + "description": "Delete a share ", + "operationId": "Shares_Delete", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -1851,9 +1811,9 @@ "$ref": "#/parameters/accountName" }, { - "name": "shareSubscriptionName", + "name": "shareName", "in": "path", - "description": "The name of the shareSubscription.", + "description": "The name of the share.", "required": true, "type": "string" }, @@ -1865,9 +1825,15 @@ "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ShareSubscription" + "$ref": "#/definitions/OperationResponse" } }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "Success" + }, "default": { "description": "An error response received from the Microsoft.DataShare resource provider.", "schema": { @@ -1875,19 +1841,22 @@ } } }, + "x-ms-long-running-operation": true, "x-ms-examples": { - "ShareSubscriptions_Get": { - "$ref": "./examples/ShareSubscriptions_Get.json" + "Shares_Delete": { + "$ref": "./examples/Shares_Delete.json" } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares": { + "get": { "tags": [ - "ShareSubscription" + "Share" ], - "summary": "Create shareSubscription in an account.", - "description": "Create a shareSubscription in an account", - "operationId": "ShareSubscriptions_Create", + "summary": "List of available shares under an account.", + "description": "List shares in an account", + "operationId": "Shares_ListByAccount", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -1899,36 +1868,35 @@ "$ref": "#/parameters/accountName" }, { - "name": "shareSubscriptionName", - "in": "path", - "description": "The name of the shareSubscription.", - "required": true, + "$ref": "#/parameters/api-version" + }, + { + "name": "$skipToken", + "in": "query", + "description": "Continuation Token", + "required": false, "type": "string" }, { - "name": "shareSubscription", - "in": "body", - "description": "create parameters for shareSubscription", - "required": true, - "schema": { - "$ref": "#/definitions/ShareSubscription" - } + "name": "$filter", + "in": "query", + "description": "Filters the results using OData syntax.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/api-version" + "name": "$orderby", + "in": "query", + "description": "Sorts the results using OData syntax.", + "required": false, + "type": "string" } ], "responses": { "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ShareSubscription" - } - }, - "201": { - "description": "Success", - "schema": { - "$ref": "#/definitions/ShareSubscription" + "$ref": "#/definitions/ShareList" } }, "default": { @@ -1938,19 +1906,24 @@ } } }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { - "ShareSubscriptions_Create": { - "$ref": "./examples/ShareSubscriptions_Create.json" + "Shares_ListByAccount": { + "$ref": "./examples/Shares_ListByAccount.json" } } - }, - "delete": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions/{shareSubscriptionName}/cancelSynchronization": { + "post": { "tags": [ "ShareSubscription" ], - "summary": "Delete shareSubscription in an account.", - "description": "Delete a shareSubscription in an account", - "operationId": "ShareSubscriptions_Delete", + "summary": "Request cancellation of a data share snapshot", + "description": "Request to cancel a synchronization.", + "operationId": "ShareSubscriptions_CancelSynchronization", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -1968,6 +1941,15 @@ "required": true, "type": "string" }, + { + "name": "shareSubscriptionSynchronization", + "in": "body", + "description": "Share Subscription Synchronization payload.", + "required": true, + "schema": { + "$ref": "#/definitions/ShareSubscriptionSynchronization" + } + }, { "$ref": "#/parameters/api-version" } @@ -1976,14 +1958,14 @@ "200": { "description": "Success", "schema": { - "$ref": "#/definitions/OperationResponse" + "$ref": "#/definitions/ShareSubscriptionSynchronization" } }, "202": { - "description": "Accepted" - }, - "204": { - "description": "Success" + "description": "Accepted", + "schema": { + "$ref": "#/definitions/ShareSubscriptionSynchronization" + } }, "default": { "description": "An error response received from the Microsoft.DataShare resource provider.", @@ -1993,9 +1975,12 @@ } }, "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, "x-ms-examples": { - "ShareSubscriptions_Delete": { - "$ref": "./examples/ShareSubscriptions_Delete.json" + "ShareSubscriptions_CancelSynchronization": { + "$ref": "./examples/ShareSubscriptions_CancelSynchronization.json" } } } @@ -2120,14 +2105,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions/{shareSubscriptionName}/listSynchronizations": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions/{shareSubscriptionName}/listSynchronizationDetails": { "post": { "tags": [ "ShareSubscription" ], - "summary": "List Synchronizations in a share subscription.", - "description": "List synchronizations of a share subscription", - "operationId": "ShareSubscriptions_ListSynchronizations", + "summary": "List data set level details for a share subscription synchronization", + "description": "List synchronization details", + "operationId": "ShareSubscriptions_ListSynchronizationDetails", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -2145,6 +2130,15 @@ "required": true, "type": "string" }, + { + "name": "shareSubscriptionSynchronization", + "in": "body", + "description": "Share Subscription Synchronization payload.", + "required": true, + "schema": { + "$ref": "#/definitions/ShareSubscriptionSynchronization" + } + }, { "$ref": "#/parameters/api-version" }, @@ -2154,13 +2148,27 @@ "description": "Continuation token", "required": false, "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "Filters the results using OData syntax.", + "required": false, + "type": "string" + }, + { + "name": "$orderby", + "in": "query", + "description": "Sorts the results using OData syntax.", + "required": false, + "type": "string" } ], "responses": { "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ShareSubscriptionSynchronizationList" + "$ref": "#/definitions/SynchronizationDetailsList" } }, "default": { @@ -2174,20 +2182,20 @@ "nextLinkName": "nextLink" }, "x-ms-examples": { - "ShareSubscriptions_ListSynchronizations": { - "$ref": "./examples/ShareSubscriptions_ListSynchronizations.json" + "ShareSubscriptions_ListSynchronizationDetails": { + "$ref": "./examples/ShareSubscriptions_ListSynchronizationDetails.json" } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions/{shareSubscriptionName}/listSynchronizationDetails": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions/{shareSubscriptionName}/listSynchronizations": { "post": { "tags": [ "ShareSubscription" ], - "summary": "List data set level details for a share subscription synchronization", - "description": "List synchronization details", - "operationId": "ShareSubscriptions_ListSynchronizationDetails", + "summary": "List Synchronizations in a share subscription.", + "description": "List synchronizations of a share subscription", + "operationId": "ShareSubscriptions_ListSynchronizations", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -2205,15 +2213,6 @@ "required": true, "type": "string" }, - { - "name": "shareSubscriptionSynchronization", - "in": "body", - "description": "Share Subscription Synchronization payload.", - "required": true, - "schema": { - "$ref": "#/definitions/ShareSubscriptionSynchronization" - } - }, { "$ref": "#/parameters/api-version" }, @@ -2223,13 +2222,27 @@ "description": "Continuation token", "required": false, "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "Filters the results using OData syntax.", + "required": false, + "type": "string" + }, + { + "name": "$orderby", + "in": "query", + "description": "Sorts the results using OData syntax.", + "required": false, + "type": "string" } ], "responses": { "200": { "description": "Success", "schema": { - "$ref": "#/definitions/SynchronizationDetailsList" + "$ref": "#/definitions/ShareSubscriptionSynchronizationList" } }, "default": { @@ -2243,8 +2256,8 @@ "nextLinkName": "nextLink" }, "x-ms-examples": { - "ShareSubscriptions_ListSynchronizationDetails": { - "$ref": "./examples/ShareSubscriptions_ListSynchronizationDetails.json" + "ShareSubscriptions_ListSynchronizations": { + "$ref": "./examples/ShareSubscriptions_ListSynchronizations.json" } } } @@ -2318,14 +2331,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions/{shareSubscriptionName}/cancelSynchronization": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions/{shareSubscriptionName}": { + "get": { "tags": [ "ShareSubscription" ], - "summary": "Request cancellation of a data share snapshot", - "description": "Request to cancel a synchronization.", - "operationId": "ShareSubscriptions_CancelSynchronization", + "summary": "Get shareSubscription in an account.", + "description": "Get a shareSubscription in an account", + "operationId": "ShareSubscriptions_Get", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -2343,15 +2356,6 @@ "required": true, "type": "string" }, - { - "name": "shareSubscriptionSynchronization", - "in": "body", - "description": "Share Subscription Synchronization payload.", - "required": true, - "schema": { - "$ref": "#/definitions/ShareSubscriptionSynchronization" - } - }, { "$ref": "#/parameters/api-version" } @@ -2360,13 +2364,7 @@ "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ShareSubscriptionSynchronization" - } - }, - "202": { - "description": "Accepted", - "schema": { - "$ref": "#/definitions/ShareSubscriptionSynchronization" + "$ref": "#/definitions/ShareSubscription" } }, "default": { @@ -2376,25 +2374,19 @@ } } }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" - }, "x-ms-examples": { - "ShareSubscriptions_CancelSynchronization": { - "$ref": "./examples/ShareSubscriptions_CancelSynchronization.json" + "ShareSubscriptions_Get": { + "$ref": "./examples/ShareSubscriptions_Get.json" } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions": { - "get": { + }, + "put": { "tags": [ "ShareSubscription" ], - "summary": "List of available share subscriptions under an account.", - "description": "List share subscriptions in an account", - "operationId": "ShareSubscriptions_ListByAccount", + "summary": "Create shareSubscription in an account.", + "description": "Create a shareSubscription in an account", + "operationId": "ShareSubscriptions_Create", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -2406,14 +2398,148 @@ "$ref": "#/parameters/accountName" }, { - "$ref": "#/parameters/api-version" - }, - { - "name": "$skipToken", + "name": "shareSubscriptionName", + "in": "path", + "description": "The name of the shareSubscription.", + "required": true, + "type": "string" + }, + { + "name": "shareSubscription", + "in": "body", + "description": "create parameters for shareSubscription", + "required": true, + "schema": { + "$ref": "#/definitions/ShareSubscription" + } + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ShareSubscription" + } + }, + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ShareSubscription" + } + }, + "default": { + "description": "An error response received from the Microsoft.DataShare resource provider.", + "schema": { + "$ref": "#/definitions/DataShareError" + } + } + }, + "x-ms-examples": { + "ShareSubscriptions_Create": { + "$ref": "./examples/ShareSubscriptions_Create.json" + } + } + }, + "delete": { + "tags": [ + "ShareSubscription" + ], + "summary": "Delete shareSubscription in an account.", + "description": "Delete a shareSubscription in an account", + "operationId": "ShareSubscriptions_Delete", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/accountName" + }, + { + "name": "shareSubscriptionName", + "in": "path", + "description": "The name of the shareSubscription.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OperationResponse" + } + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "Success" + }, + "default": { + "description": "An error response received from the Microsoft.DataShare resource provider.", + "schema": { + "$ref": "#/definitions/DataShareError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "ShareSubscriptions_Delete": { + "$ref": "./examples/ShareSubscriptions_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions": { + "get": { + "tags": [ + "ShareSubscription" + ], + "summary": "List of available share subscriptions under an account.", + "description": "List share subscriptions in an account", + "operationId": "ShareSubscriptions_ListByAccount", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/accountName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "$skipToken", "in": "query", "description": "Continuation Token", "required": false, "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "Filters the results using OData syntax.", + "required": false, + "type": "string" + }, + { + "name": "$orderby", + "in": "query", + "description": "Sorts the results using OData syntax.", + "required": false, + "type": "string" } ], "responses": { @@ -2964,29 +3090,23 @@ } } }, - "Identity": { - "description": "Identity of resource", + "AccountList": { + "description": "List response for get Accounts.", + "required": [ + "value" + ], "type": "object", "properties": { - "principalId": { - "description": "service principal Id", - "type": "string", - "readOnly": true - }, - "tenantId": { - "description": "Tenant Id", - "type": "string", - "readOnly": true + "nextLink": { + "description": "The Url of next result page.", + "type": "string" }, - "type": { - "description": "Identity Type", - "enum": [ - "SystemAssigned" - ], - "type": "string", - "x-ms-enum": { - "name": "type", - "modelAsString": true + "value": { + "description": "Collection of items of type DataTransferObjects.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/Account" } } } @@ -3029,49 +3149,6 @@ } } }, - "DataShareError": { - "description": "The data share error model.", - "required": [ - "error" - ], - "type": "object", - "properties": { - "error": { - "$ref": "#/definitions/DataShareErrorInfo", - "description": "The data share error body" - } - } - }, - "DataShareErrorInfo": { - "description": "The data share error body model.", - "required": [ - "code", - "message" - ], - "type": "object", - "properties": { - "code": { - "description": "Code of the error", - "type": "string" - }, - "details": { - "description": "Nested details of the error model", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/DataShareErrorInfo" - } - }, - "message": { - "description": "Message of the error", - "type": "string" - }, - "target": { - "description": "Target of the error", - "type": "string" - } - } - }, "AccountUpdateParameters": { "description": "Update parameters for accounts", "type": "object", @@ -3085,985 +3162,1026 @@ } } }, - "OperationResponse": { - "description": "Response for long running operation", + "ADLSGen1FileDataSet": { + "description": "An ADLS Gen 1 file data set.", "required": [ - "status" + "properties", + "kind" ], "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSet" + } + ], "properties": { - "endTime": { - "format": "date-time", - "description": "start time", + "properties": { + "$ref": "#/definitions/ADLSGen1FileProperties", + "description": "ADLS Gen 1 file data set properties.", + "x-ms-client-flatten": true + } + }, + "x-ms-discriminator-value": "AdlsGen1File" + }, + "ADLSGen1FileProperties": { + "description": "Properties of the ADLS Gen1 file data set.", + "required": [ + "subscriptionId", + "resourceGroup", + "accountName", + "folderPath", + "fileName" + ], + "type": "object", + "properties": { + "accountName": { + "description": "The ADLS account name.", "type": "string" }, - "error": { - "$ref": "#/definitions/DataShareErrorInfo", - "description": "The error property when status is failed." + "dataSetId": { + "description": "Unique id for identifying a data set resource", + "type": "string", + "readOnly": true }, - "startTime": { - "format": "date-time", - "description": "start time", + "fileName": { + "description": "The file name in the ADLS account.", "type": "string" }, - "status": { - "description": "Operation state of the long running operation.", - "enum": [ - "Accepted", - "InProgress", - "TransientFailure", - "Succeeded", - "Failed", - "Canceled" - ], - "type": "string", - "x-ms-enum": { - "name": "status", - "modelAsString": true - } - } - } - }, - "AccountList": { - "description": "List response for get Accounts.", - "required": [ - "value" - ], - "type": "object", - "properties": { - "nextLink": { - "description": "The Url of next result page.", + "folderPath": { + "description": "The folder path within the ADLS account.", "type": "string" }, - "value": { - "description": "Collection of items of type DataTransferObjects.", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/Account" - } + "resourceGroup": { + "description": "Resource group of ADLS account.", + "type": "string" + }, + "subscriptionId": { + "description": "Subscription id of ADLS account.", + "type": "string" } } }, - "ConsumerInvitation": { - "description": "A consumer Invitation data transfer object.", + "ADLSGen1FolderDataSet": { + "description": "An ADLS Gen 1 folder data set.", "required": [ - "properties" + "properties", + "kind" ], "type": "object", "allOf": [ { - "$ref": "#/definitions/ProxyDto" + "$ref": "#/definitions/DataSet" } ], "properties": { "properties": { - "$ref": "#/definitions/ConsumerInvitationProperties", - "description": "Properties on the account", + "$ref": "#/definitions/ADLSGen1FolderProperties", + "description": "ADLS Gen 1 folder data set properties.", "x-ms-client-flatten": true } - } + }, + "x-ms-discriminator-value": "AdlsGen1Folder" }, - "ConsumerInvitationProperties": { - "description": "Properties of consumer invitation", + "ADLSGen1FolderProperties": { + "description": "Properties of the ADLS Gen1 folder data set.", "required": [ - "invitationId" + "subscriptionId", + "resourceGroup", + "accountName", + "folderPath" ], "type": "object", "properties": { - "dataSetCount": { - "format": "int32", - "description": "Number of data sets in a share", - "type": "integer", - "readOnly": true - }, - "description": { - "description": "Description shared when the invitation was created", - "type": "string", - "readOnly": true - }, - "invitationId": { - "description": "Unique id of the invitation.", + "accountName": { + "description": "The ADLS account name.", "type": "string" }, - "invitationStatus": { - "description": "The status of the invitation.", - "enum": [ - "Pending", - "Accepted", - "Rejected", - "Withdrawn" - ], - "type": "string", - "readOnly": true, - "x-ms-enum": { - "name": "invitationStatus", - "modelAsString": true - } - }, - "location": { - "description": "invitation location", - "type": "string", - "readOnly": true - }, - "providerEmail": { - "description": "Email of the provider who created the resource", - "type": "string", - "readOnly": true - }, - "providerName": { - "description": "Name of the provider who created the resource", - "type": "string", - "readOnly": true - }, - "providerTenantName": { - "description": "Tenant name of the provider who created the resource", - "type": "string", - "readOnly": true - }, - "respondedAt": { - "format": "date-time", - "description": "The time the recipient responded to the invitation.", - "type": "string", - "readOnly": true - }, - "sentAt": { - "format": "date-time", - "description": "Gets the time at which the invitation was sent.", - "type": "string", - "readOnly": true - }, - "shareName": { - "description": "Gets the source share Name.", + "dataSetId": { + "description": "Unique id for identifying a data set resource", "type": "string", "readOnly": true }, - "termsOfUse": { - "description": "Terms of use shared when the invitation was created", - "type": "string", - "readOnly": true + "folderPath": { + "description": "The folder path within the ADLS account.", + "type": "string" }, - "userEmail": { - "description": "Email of the user who created the resource", - "type": "string", - "readOnly": true + "resourceGroup": { + "description": "Resource group of ADLS account.", + "type": "string" }, - "userName": { - "description": "Name of the user who created the resource", - "type": "string", - "readOnly": true + "subscriptionId": { + "description": "Subscription id of ADLS account.", + "type": "string" } } }, - "ConsumerInvitationList": { - "description": "List response for get InvitationList", + "ADLSGen2FileDataSet": { + "description": "An ADLS Gen 2 file data set.", "required": [ - "value" + "properties", + "kind" ], "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSet" + } + ], "properties": { - "nextLink": { - "description": "The Url of next result page.", - "type": "string" - }, - "value": { - "description": "Collection of items of type DataTransferObjects.", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/ConsumerInvitation" - } + "properties": { + "$ref": "#/definitions/ADLSGen2FileProperties", + "description": "ADLS Gen 2 file data set properties.", + "x-ms-client-flatten": true } - } + }, + "x-ms-discriminator-value": "AdlsGen2File" }, - "DataSet": { - "description": "A DataSet data transfer object.", + "ADLSGen2FileDataSetMapping": { + "description": "An ADLS Gen2 file data set mapping.", "required": [ + "properties", "kind" ], "type": "object", "allOf": [ { - "$ref": "#/definitions/ProxyDto" + "$ref": "#/definitions/DataSetMapping" } ], "properties": { - "kind": { - "description": "Kind of data set.", - "enum": [ - "Blob", - "Container", - "BlobFolder", - "AdlsGen2FileSystem", - "AdlsGen2Folder", - "AdlsGen2File", - "AdlsGen1Folder", - "AdlsGen1File", - "KustoCluster", - "KustoDatabase", - "SqlDBTable", - "SqlDWTable" - ], - "type": "string", - "x-ms-enum": { - "name": "kind", - "modelAsString": true - } + "properties": { + "$ref": "#/definitions/ADLSGen2FileDataSetMappingProperties", + "description": "ADLS Gen2 file data set mapping properties.", + "x-ms-client-flatten": true } }, - "discriminator": "kind" + "x-ms-discriminator-value": "AdlsGen2File" }, - "DataSetList": { - "description": "List response for get DataSets", + "ADLSGen2FileDataSetMappingProperties": { + "description": "ADLS Gen 2 file data set mapping property bag.", "required": [ - "value" + "fileSystem", + "filePath", + "subscriptionId", + "resourceGroup", + "storageAccountName", + "dataSetId" ], "type": "object", "properties": { - "nextLink": { - "description": "The Url of next result page.", + "dataSetId": { + "description": "The id of the source data set.", "type": "string" }, - "value": { - "description": "Collection of items of type DataTransferObjects.", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/DataSet" + "dataSetMappingStatus": { + "description": "Gets the status of the data set mapping.", + "enum": [ + "Ok", + "Broken" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "dataSetMappingStatus", + "modelAsString": true } - } - } - }, - "DataSetMapping": { - "description": "A data set mapping data transfer object.", - "required": [ - "kind" - ], - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/ProxyDto" - } - ], - "properties": { - "kind": { - "description": "Kind of data set mapping.", + }, + "filePath": { + "description": "File path within the file system.", + "type": "string" + }, + "fileSystem": { + "description": "File system to which the file belongs.", + "type": "string" + }, + "outputType": { + "description": "Type of output file", "enum": [ - "Blob", - "Container", - "BlobFolder", - "AdlsGen2FileSystem", - "AdlsGen2Folder", - "AdlsGen2File", - "KustoCluster", - "KustoDatabase", - "SqlDBTable", - "SqlDWTable" + "Csv", + "Parquet" ], "type": "string", "x-ms-enum": { - "name": "kind", + "name": "outputType", + "modelAsString": 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 } + }, + "resourceGroup": { + "description": "Resource group of storage account.", + "type": "string" + }, + "storageAccountName": { + "description": "Storage account name of the source data set.", + "type": "string" + }, + "subscriptionId": { + "description": "Subscription id of storage account.", + "type": "string" } - }, - "discriminator": "kind" + } }, - "DataSetMappingList": { - "description": "List response for get DataSetMappings", + "ADLSGen2FileProperties": { + "description": "Properties of the ADLS Gen2 file data set.", "required": [ - "value" + "fileSystem", + "filePath", + "subscriptionId", + "resourceGroup", + "storageAccountName" ], "type": "object", "properties": { - "nextLink": { - "description": "The Url of next result page.", + "dataSetId": { + "description": "Unique id for identifying a data set resource", + "type": "string", + "readOnly": true + }, + "filePath": { + "description": "File path within the file system.", "type": "string" }, - "value": { - "description": "Collection of items of type DataTransferObjects.", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/DataSetMapping" - } + "fileSystem": { + "description": "File system to which the file belongs.", + "type": "string" + }, + "resourceGroup": { + "description": "Resource group of storage account", + "type": "string" + }, + "storageAccountName": { + "description": "Storage account name of the source data set", + "type": "string" + }, + "subscriptionId": { + "description": "Subscription id of storage account", + "type": "string" } } }, - "Invitation": { - "description": "A Invitation data transfer object.", + "ADLSGen2FileSystemDataSet": { + "description": "An ADLS Gen 2 file system data set.", + "required": [ + "properties", + "kind" + ], "type": "object", "allOf": [ { - "$ref": "#/definitions/ProxyDto" + "$ref": "#/definitions/DataSet" } ], "properties": { "properties": { - "$ref": "#/definitions/InvitationProperties", - "description": "Properties on the Invitation", + "$ref": "#/definitions/ADLSGen2FileSystemProperties", + "description": "ADLS Gen 2 file system data set properties.", "x-ms-client-flatten": true } - } + }, + "x-ms-discriminator-value": "AdlsGen2FileSystem" }, - "InvitationProperties": { - "description": "Invitation property bag.", + "ADLSGen2FileSystemDataSetMapping": { + "description": "An ADLS Gen2 file system data set mapping.", + "required": [ + "properties", + "kind" + ], "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSetMapping" + } + ], "properties": { - "invitationId": { - "description": "unique invitation id", - "type": "string", - "readOnly": true + "properties": { + "$ref": "#/definitions/ADLSGen2FileSystemDataSetMappingProperties", + "description": "ADLS Gen2 file system data set mapping properties.", + "x-ms-client-flatten": true + } + }, + "x-ms-discriminator-value": "AdlsGen2FileSystem" + }, + "ADLSGen2FileSystemDataSetMappingProperties": { + "description": "ADLS Gen 2 file system data set mapping property bag.", + "required": [ + "fileSystem", + "subscriptionId", + "resourceGroup", + "storageAccountName", + "dataSetId" + ], + "type": "object", + "properties": { + "dataSetId": { + "description": "The id of the source data set.", + "type": "string" }, - "invitationStatus": { - "description": "The status of the invitation.", + "dataSetMappingStatus": { + "description": "Gets the status of the data set mapping.", "enum": [ - "Pending", - "Accepted", - "Rejected", - "Withdrawn" + "Ok", + "Broken" ], "type": "string", "readOnly": true, "x-ms-enum": { - "name": "invitationStatus", + "name": "dataSetMappingStatus", "modelAsString": true } }, - "respondedAt": { - "format": "date-time", - "description": "The time the recipient responded to the invitation.", - "type": "string", - "readOnly": true + "fileSystem": { + "description": "The file system name.", + "type": "string" }, - "sentAt": { - "format": "date-time", - "description": "Gets the time at which the invitation was sent.", + "provisioningState": { + "description": "Provisioning state of the data set mapping.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Moving", + "Failed" + ], "type": "string", - "readOnly": true + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } }, - "targetActiveDirectoryId": { - "description": "The target Azure AD Id. Can't be combined with email.", + "resourceGroup": { + "description": "Resource group of storage account.", "type": "string" }, - "targetEmail": { - "description": "The email the invitation is directed to.", + "storageAccountName": { + "description": "Storage account name of the source data set.", "type": "string" }, - "targetObjectId": { - "description": "The target user or application Id that invitation is being sent to.\r\nMust be specified along TargetActiveDirectoryId. This enables sending\r\ninvitations to specific users or applications in an AD tenant.", + "subscriptionId": { + "description": "Subscription id of storage account.", "type": "string" - }, - "userEmail": { - "description": "Email of the user who created the resource", - "type": "string", - "readOnly": true - }, - "userName": { - "description": "Name of the user who created the resource", - "type": "string", - "readOnly": true } } }, - "InvitationList": { - "description": "List response for get InvitationList", + "ADLSGen2FileSystemProperties": { + "description": "Properties of the ADLS Gen2 file system data set.", "required": [ - "value" + "fileSystem", + "subscriptionId", + "resourceGroup", + "storageAccountName" ], "type": "object", "properties": { - "nextLink": { - "description": "The Url of next result page.", + "dataSetId": { + "description": "Unique id for identifying a data set resource", + "type": "string", + "readOnly": true + }, + "fileSystem": { + "description": "The file system name.", "type": "string" }, - "value": { - "description": "Collection of items of type DataTransferObjects.", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/Invitation" - } - } - } - }, - "OperationList": { - "description": "List response for get operations.", - "required": [ - "value" - ], - "type": "object", - "properties": { - "nextLink": { - "description": "The Url of next result page.", + "resourceGroup": { + "description": "Resource group of storage account", "type": "string" }, - "value": { - "description": "Collection of items of type DataTransferObjects.", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/OperationModel" - } - } - } - }, - "OperationModel": { - "description": "The response model for get operations", - "type": "object", - "properties": { - "display": { - "$ref": "#/definitions/OperationModelProperties", - "description": "Properties on the operation" - }, - "name": { - "description": "Operation name for display purposes", + "storageAccountName": { + "description": "Storage account name of the source data set", "type": "string" }, - "origin": { - "description": "origin of the operation", + "subscriptionId": { + "description": "Subscription id of storage account", "type": "string" - }, - "properties": { - "$ref": "#/definitions/OperationMetaPropertyInfo", - "description": "properties for the operation meta info", - "x-ms-client-flatten": true } } }, - "OperationModelProperties": { - "description": "Properties on operations", + "ADLSGen2FolderDataSet": { + "description": "An ADLS Gen 2 folder data set.", + "required": [ + "properties", + "kind" + ], "type": "object", - "properties": { - "description": { - "description": "Description of the operation for display purposes", - "type": "string" - }, - "operation": { - "description": "Name of the operation for display purposes", - "type": "string" - }, - "provider": { - "description": "Name of the provider for display purposes", - "type": "string" - }, - "resource": { - "description": "Name of the resource type for display purposes", - "type": "string" + "allOf": [ + { + "$ref": "#/definitions/DataSet" } - } - }, - "OperationMetaPropertyInfo": { - "description": "properties on meta info", - "type": "object", + ], "properties": { - "serviceSpecification": { - "$ref": "#/definitions/OperationMetaServiceSpecification", - "description": "meta service specification" + "properties": { + "$ref": "#/definitions/ADLSGen2FolderProperties", + "description": "ADLS Gen 2 folder data set properties.", + "x-ms-client-flatten": true } - } + }, + "x-ms-discriminator-value": "AdlsGen2Folder" }, - "OperationMetaServiceSpecification": { - "description": "The operation meta service specification", + "ADLSGen2FolderDataSetMapping": { + "description": "An ADLS Gen2 folder data set mapping.", + "required": [ + "properties", + "kind" + ], "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSetMapping" + } + ], "properties": { - "logSpecifications": { - "description": "log specifications for the operation", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/OperationMetaLogSpecification" - } - }, - "metricSpecifications": { - "description": "metric specifications for the operation", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/OperationMetaMetricSpecification" - } + "properties": { + "$ref": "#/definitions/ADLSGen2FolderDataSetMappingProperties", + "description": "ADLS Gen2 folder data set mapping properties.", + "x-ms-client-flatten": true } - } + }, + "x-ms-discriminator-value": "AdlsGen2Folder" }, - "OperationMetaMetricSpecification": { - "description": "metric specifications for the operation", + "ADLSGen2FolderDataSetMappingProperties": { + "description": "ADLS Gen 2 folder data set mapping property bag.", + "required": [ + "fileSystem", + "folderPath", + "subscriptionId", + "resourceGroup", + "storageAccountName", + "dataSetId" + ], "type": "object", "properties": { - "aggregationType": { - "description": "aggregation type of metric", + "dataSetId": { + "description": "The id of the source data set.", "type": "string" }, - "dimensions": { - "description": "properties for dimension", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/DimensionProperties" + "dataSetMappingStatus": { + "description": "Gets the status of the data set mapping.", + "enum": [ + "Ok", + "Broken" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "dataSetMappingStatus", + "modelAsString": true } }, - "displayDescription": { - "description": "description of the metric", - "type": "string" - }, - "displayName": { - "description": "localized name of the metric", + "fileSystem": { + "description": "File system to which the folder belongs.", "type": "string" }, - "enableRegionalMdmAccount": { - "description": "enable regional mdm account", + "folderPath": { + "description": "Folder path within the file system.", "type": "string" }, - "internalMetricName": { - "description": "internal metric name", - "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 + } }, - "name": { - "description": "name of the metric", + "resourceGroup": { + "description": "Resource group of storage account.", "type": "string" }, - "resourceIdDimensionNameOverride": { - "description": "dimension name use to replace resource id if specified", + "storageAccountName": { + "description": "Storage account name of the source data set.", "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" - } - }, - "unit": { - "description": "units for the metric", + "subscriptionId": { + "description": "Subscription id of storage account.", "type": "string" } } }, - "OperationMetaLogSpecification": { - "description": "log specifications for operation api", + "ADLSGen2FolderProperties": { + "description": "Properties of the ADLS Gen2 folder data set.", + "required": [ + "fileSystem", + "folderPath", + "subscriptionId", + "resourceGroup", + "storageAccountName" + ], "type": "object", "properties": { - "blobDuration": { - "description": "blob duration of the log", + "dataSetId": { + "description": "Unique id for identifying a data set resource", + "type": "string", + "readOnly": true + }, + "fileSystem": { + "description": "File system to which the folder belongs.", "type": "string" }, - "displayName": { - "description": "localized name of the log category", + "folderPath": { + "description": "Folder path within the file system.", "type": "string" }, - "name": { - "description": "name of the log category", + "resourceGroup": { + "description": "Resource group of storage account", "type": "string" - } - } - }, - "DimensionProperties": { - "description": "properties for dimension", - "type": "object", - "properties": { - "displayName": { - "description": "localized display name of the dimension to customer", + }, + "storageAccountName": { + "description": "Storage account name of the source data set", "type": "string" }, - "name": { - "description": "dimension name", + "subscriptionId": { + "description": "Subscription id of storage account", "type": "string" } } }, - "Share": { - "description": "A share data transfer object.", + "BlobContainerDataSet": { + "description": "An Azure storage blob container data set.", + "required": [ + "properties", + "kind" + ], "type": "object", "allOf": [ { - "$ref": "#/definitions/ProxyDto" + "$ref": "#/definitions/DataSet" } ], "properties": { "properties": { - "$ref": "#/definitions/ShareProperties", - "description": "Properties on the share", + "$ref": "#/definitions/BlobContainerProperties", + "description": "Blob container data set properties.", "x-ms-client-flatten": true } - } + }, + "x-ms-discriminator-value": "Container" }, - "ShareProperties": { - "description": "Share property bag.", + "BlobContainerDataSetMapping": { + "description": "A Blob container data set mapping.", + "required": [ + "properties", + "kind" + ], "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSetMapping" + } + ], "properties": { - "createdAt": { - "format": "date-time", - "description": "Time at which the share was created.", - "type": "string", - "readOnly": true + "properties": { + "$ref": "#/definitions/BlobContainerMappingProperties", + "description": "Blob container data set mapping properties.", + "x-ms-client-flatten": true + } + }, + "x-ms-discriminator-value": "Container" + }, + "BlobContainerMappingProperties": { + "description": "Azure storage Blob container data set mapping property bag.", + "required": [ + "containerName", + "subscriptionId", + "resourceGroup", + "storageAccountName", + "dataSetId" + ], + "type": "object", + "properties": { + "containerName": { + "description": "BLOB Container name.", + "type": "string" }, - "description": { - "description": "Share description.", + "dataSetId": { + "description": "The id of the source data set.", "type": "string" }, - "provisioningState": { - "description": "Gets or sets the provisioning state", + "dataSetMappingStatus": { + "description": "Gets the status of the data set mapping.", "enum": [ - "Succeeded", - "Creating", - "Deleting", - "Moving", - "Failed" + "Ok", + "Broken" ], "type": "string", "readOnly": true, "x-ms-enum": { - "name": "provisioningState", + "name": "dataSetMappingStatus", "modelAsString": true } }, - "shareKind": { - "description": "Share kind.", + "provisioningState": { + "description": "Provisioning state of the data set mapping.", "enum": [ - "CopyBased", - "InPlace" + "Succeeded", + "Creating", + "Deleting", + "Moving", + "Failed" ], "type": "string", + "readOnly": true, "x-ms-enum": { - "name": "shareKind", + "name": "provisioningState", "modelAsString": true } }, - "terms": { - "description": "Share terms.", + "resourceGroup": { + "description": "Resource group of storage account.", "type": "string" }, - "userEmail": { - "description": "Email of the user who created the resource", - "type": "string", - "readOnly": true - }, - "userName": { - "description": "Name of the user who created the resource", - "type": "string", - "readOnly": true - } - } - }, - "ShareList": { - "description": "List response for get Shares.", - "required": [ - "value" - ], - "type": "object", - "properties": { - "nextLink": { - "description": "The Url of next result page.", + "storageAccountName": { + "description": "Storage account name of the source data set.", "type": "string" }, - "value": { - "description": "Collection of items of type DataTransferObjects.", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/Share" - } + "subscriptionId": { + "description": "Subscription id of storage account.", + "type": "string" } } }, - "ShareSynchronizationList": { - "description": "List response for get ShareSynchronization.", + "BlobContainerProperties": { + "description": "Properties of the BLOB container data set.", "required": [ - "value" + "containerName", + "subscriptionId", + "resourceGroup", + "storageAccountName" ], "type": "object", "properties": { - "nextLink": { - "description": "The Url of next result page.", - "type": "string" - }, - "value": { - "description": "Collection of items of type DataTransferObjects.", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/ShareSynchronization" - } - } - } - }, - "ShareSynchronization": { - "description": "A ShareSynchronization data transfer object.", - "type": "object", - "properties": { - "consumerEmail": { - "description": "Email of the user who created the synchronization", - "type": "string" - }, - "consumerName": { - "description": "Name of the user who created the synchronization", - "type": "string" - }, - "consumerTenantName": { - "description": "Tenant name of the consumer who created the synchronization", - "type": "string" - }, - "durationMs": { - "format": "int32", - "description": "synchronization duration", - "type": "integer" - }, - "endTime": { - "format": "date-time", - "description": "End time of synchronization", + "containerName": { + "description": "BLOB Container name.", "type": "string" }, - "message": { - "description": "message of synchronization", - "type": "string" + "dataSetId": { + "description": "Unique id for identifying a data set resource", + "type": "string", + "readOnly": true }, - "startTime": { - "format": "date-time", - "description": "start time of synchronization", + "resourceGroup": { + "description": "Resource group of storage account", "type": "string" }, - "status": { - "description": "Raw Status", + "storageAccountName": { + "description": "Storage account name of the source data set", "type": "string" }, - "synchronizationId": { - "description": "Synchronization id", + "subscriptionId": { + "description": "Subscription id of storage account", "type": "string" - }, - "synchronizationMode": { - "description": "Synchronization mode", - "enum": [ - "Incremental", - "FullSync" - ], - "type": "string", - "readOnly": true, - "x-ms-enum": { - "name": "synchronizationMode", - "modelAsString": true - } } } }, - "SynchronizationDetailsList": { - "description": "details of synchronization", + "BlobDataSet": { + "description": "An Azure storage blob data set.", "required": [ - "value" + "properties", + "kind" ], "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSet" + } + ], "properties": { - "nextLink": { - "description": "The Url of next result page.", - "type": "string" - }, - "value": { - "description": "Collection of items of type DataTransferObjects.", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/SynchronizationDetails" - } + "properties": { + "$ref": "#/definitions/BlobProperties", + "description": "Blob data set properties.", + "x-ms-client-flatten": true } - } + }, + "x-ms-discriminator-value": "Blob" }, - "SynchronizationDetails": { - "description": "Synchronization details at data set level", + "BlobDataSetMapping": { + "description": "A Blob data set mapping.", + "required": [ + "properties", + "kind" + ], "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSetMapping" + } + ], "properties": { - "dataSetId": { - "description": "Id of data set", - "type": "string", - "readOnly": true - }, - "dataSetType": { - "description": "Type of the data set", + "properties": { + "$ref": "#/definitions/BlobMappingProperties", + "description": "Blob data set mapping properties.", + "x-ms-client-flatten": true + } + }, + "x-ms-discriminator-value": "Blob" + }, + "BlobFolderDataSet": { + "description": "An Azure storage blob folder data set.", + "required": [ + "properties", + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSet" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BlobFolderProperties", + "description": "Blob folder data set properties.", + "x-ms-client-flatten": true + } + }, + "x-ms-discriminator-value": "BlobFolder" + }, + "BlobFolderDataSetMapping": { + "description": "A Blob folder data set mapping.", + "required": [ + "properties", + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSetMapping" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BlobFolderMappingProperties", + "description": "Blob folder data set mapping properties.", + "x-ms-client-flatten": true + } + }, + "x-ms-discriminator-value": "BlobFolder" + }, + "BlobFolderMappingProperties": { + "description": "Azure storage Blob folder data set mapping property bag.", + "required": [ + "containerName", + "prefix", + "subscriptionId", + "resourceGroup", + "storageAccountName", + "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": [ - "Blob", - "Container", - "BlobFolder", - "AdlsGen2FileSystem", - "AdlsGen2Folder", - "AdlsGen2File", - "AdlsGen1Folder", - "AdlsGen1File", - "KustoCluster", - "KustoDatabase", - "SqlDBTable", - "SqlDWTable" + "Ok", + "Broken" ], "type": "string", "readOnly": true, "x-ms-enum": { - "name": "dataSetType", + "name": "dataSetMappingStatus", "modelAsString": true } }, - "durationMs": { - "format": "int32", - "description": "Duration of data set level copy", - "type": "integer", - "readOnly": true + "prefix": { + "description": "Prefix for blob folder", + "type": "string" }, - "endTime": { - "format": "date-time", - "description": "End time of data set level copy", + "provisioningState": { + "description": "Provisioning state of the data set mapping.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Moving", + "Failed" + ], "type": "string", - "readOnly": true + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } }, - "filesRead": { - "format": "int64", - "description": "The number of files read from the source data set", - "type": "integer", - "readOnly": true + "resourceGroup": { + "description": "Resource group of storage account.", + "type": "string" }, - "filesWritten": { - "format": "int64", - "description": "The number of files written into the sink data set", - "type": "integer", - "readOnly": true + "storageAccountName": { + "description": "Storage account name of the source data set.", + "type": "string" }, - "message": { - "description": "Error message if any", - "type": "string", - "readOnly": true + "subscriptionId": { + "description": "Subscription id of storage account.", + "type": "string" + } + } + }, + "BlobFolderProperties": { + "description": "Properties of the blob folder data set.", + "required": [ + "containerName", + "prefix", + "subscriptionId", + "resourceGroup", + "storageAccountName" + ], + "type": "object", + "properties": { + "containerName": { + "description": "Container that has the file path.", + "type": "string" }, - "name": { - "description": "Name of the data set", + "dataSetId": { + "description": "Unique id for identifying a data set resource", "type": "string", "readOnly": true }, - "rowsCopied": { - "format": "int64", - "description": "The number of files copied into the sink data set", - "type": "integer", - "readOnly": true - }, - "rowsRead": { - "format": "int64", - "description": "The number of rows read from the source data set.", - "type": "integer", - "readOnly": true - }, - "sizeRead": { - "format": "int64", - "description": "The size of the data read from the source data set in bytes", - "type": "integer", - "readOnly": true - }, - "sizeWritten": { - "format": "int64", - "description": "The size of the data written into the sink data set in bytes", - "type": "integer", - "readOnly": true + "prefix": { + "description": "Prefix for blob folder", + "type": "string" }, - "startTime": { - "format": "date-time", - "description": "Start time of data set level copy", - "type": "string", - "readOnly": true + "resourceGroup": { + "description": "Resource group of storage account", + "type": "string" }, - "status": { - "description": "Raw Status", - "type": "string", - "readOnly": true + "storageAccountName": { + "description": "Storage account name of the source data set", + "type": "string" }, - "vCore": { - "format": "int64", - "description": "The vCore units consumed for the data set synchronization", - "type": "integer", - "readOnly": true + "subscriptionId": { + "description": "Subscription id of storage account", + "type": "string" } } }, - "ProviderShareSubscription": { - "description": "A provider side share subscription data transfer object.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/ProxyDto" - } + "BlobMappingProperties": { + "description": "Azure storage Blob data set mapping property bag.", + "required": [ + "containerName", + "filePath", + "subscriptionId", + "resourceGroup", + "storageAccountName", + "dataSetId" ], - "properties": { - "properties": { - "$ref": "#/definitions/ProviderShareSubscriptionProperties", - "description": "properties of providerShareSubscription", - "x-ms-client-flatten": true - } - } - }, - "ProviderShareSubscriptionProperties": { - "description": "Provider share subscription properties", "type": "object", "properties": { - "consumerEmail": { - "description": "Email of the consumer who created the share subscription", - "type": "string", - "readOnly": true - }, - "consumerName": { - "description": "Name of the consumer who created the share subscription", - "type": "string", - "readOnly": true - }, - "consumerTenantName": { - "description": "Tenant name of the consumer who created the share subscription", - "type": "string", - "readOnly": true - }, - "createdAt": { - "format": "date-time", - "description": "created at", - "type": "string", - "readOnly": true + "containerName": { + "description": "Container that has the file path.", + "type": "string" }, - "providerEmail": { - "description": "Email of the provider who created the share", - "type": "string", - "readOnly": true + "dataSetId": { + "description": "The id of the source data set.", + "type": "string" }, - "providerName": { - "description": "Name of the provider who created the share", + "dataSetMappingStatus": { + "description": "Gets the status of the data set mapping.", + "enum": [ + "Ok", + "Broken" + ], "type": "string", - "readOnly": true + "readOnly": true, + "x-ms-enum": { + "name": "dataSetMappingStatus", + "modelAsString": true + } }, - "sharedAt": { - "format": "date-time", - "description": "Shared at", - "type": "string", - "readOnly": true + "filePath": { + "description": "File path within the source data set", + "type": "string" }, - "shareSubscriptionObjectId": { - "description": "share Subscription Object Id", + "outputType": { + "description": "File output type", + "enum": [ + "Csv", + "Parquet" + ], "type": "string", - "readOnly": true + "x-ms-enum": { + "name": "outputType", + "modelAsString": true + } }, - "shareSubscriptionStatus": { - "description": "Gets the status of share subscription", + "provisioningState": { + "description": "Provisioning state of the data set mapping.", "enum": [ - "Active", - "Revoked", - "SourceDeleted", - "Revoking" + "Succeeded", + "Creating", + "Deleting", + "Moving", + "Failed" ], "type": "string", "readOnly": true, "x-ms-enum": { - "name": "shareSubscriptionStatus", + "name": "provisioningState", "modelAsString": true } + }, + "resourceGroup": { + "description": "Resource group of storage account.", + "type": "string" + }, + "storageAccountName": { + "description": "Storage account name of the source data set.", + "type": "string" + }, + "subscriptionId": { + "description": "Subscription id of storage account.", + "type": "string" + } + } + }, + "BlobProperties": { + "description": "Properties of the blob data set.", + "required": [ + "containerName", + "filePath", + "subscriptionId", + "resourceGroup", + "storageAccountName" + ], + "type": "object", + "properties": { + "containerName": { + "description": "Container that has the file path.", + "type": "string" + }, + "dataSetId": { + "description": "Unique id for identifying a data set resource", + "type": "string", + "readOnly": true + }, + "filePath": { + "description": "File path within the source data set", + "type": "string" + }, + "resourceGroup": { + "description": "Resource group of storage account", + "type": "string" + }, + "storageAccountName": { + "description": "Storage account name of the source data set", + "type": "string" + }, + "subscriptionId": { + "description": "Subscription id of storage account", + "type": "string" } } }, - "ProviderShareSubscriptionList": { - "description": "List response for get ShareSubscription.", + "ConsumerInvitation": { + "description": "A consumer Invitation data transfer object.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyDto" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ConsumerInvitationProperties", + "description": "Properties on the account", + "x-ms-client-flatten": true + } + } + }, + "ConsumerInvitationList": { + "description": "List response for get InvitationList", "required": [ "value" ], @@ -4078,47 +4196,53 @@ "uniqueItems": false, "type": "array", "items": { - "$ref": "#/definitions/ProviderShareSubscription" + "$ref": "#/definitions/ConsumerInvitation" } } } }, - "ShareSubscription": { - "description": "A share subscription data transfer object.", - "required": [ - "properties" - ], - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/ProxyDto" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/ShareSubscriptionProperties", - "description": "Properties on the share subscription", - "x-ms-client-flatten": true - } - } - }, - "ShareSubscriptionProperties": { - "description": "Share subscription property bag.", + "ConsumerInvitationProperties": { + "description": "Properties of consumer invitation", "required": [ "invitationId" ], "type": "object", "properties": { - "createdAt": { - "format": "date-time", - "description": "Time at which the share subscription was created.", + "dataSetCount": { + "format": "int32", + "description": "Number of data sets in a share", + "type": "integer", + "readOnly": true + }, + "description": { + "description": "Description shared when the invitation was created", "type": "string", "readOnly": true }, "invitationId": { - "description": "The invitation id.", + "description": "Unique id of the invitation.", "type": "string" }, + "invitationStatus": { + "description": "The status of the invitation.", + "enum": [ + "Pending", + "Accepted", + "Rejected", + "Withdrawn" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "invitationStatus", + "modelAsString": true + } + }, + "location": { + "description": "invitation location", + "type": "string", + "readOnly": true + }, "providerEmail": { "description": "Email of the provider who created the resource", "type": "string", @@ -4134,62 +4258,25 @@ "type": "string", "readOnly": true }, - "provisioningState": { - "description": "Provisioning state of the share subscription", - "enum": [ - "Succeeded", - "Creating", - "Deleting", - "Moving", - "Failed" - ], - "type": "string", - "readOnly": true, - "x-ms-enum": { - "name": "provisioningState", - "modelAsString": true - } - }, - "shareDescription": { - "description": "Description of share", + "respondedAt": { + "format": "date-time", + "description": "The time the recipient responded to the invitation.", "type": "string", "readOnly": true }, - "shareKind": { - "description": "Kind of share", - "enum": [ - "CopyBased", - "InPlace" - ], + "sentAt": { + "format": "date-time", + "description": "Gets the time at which the invitation was sent.", "type": "string", - "readOnly": true, - "x-ms-enum": { - "name": "shareKind", - "modelAsString": true - } + "readOnly": true }, "shareName": { - "description": "Name of the share", + "description": "Gets the source share Name.", "type": "string", "readOnly": true }, - "shareSubscriptionStatus": { - "description": "Gets the current status of share subscription.", - "enum": [ - "Active", - "Revoked", - "SourceDeleted", - "Revoking" - ], - "type": "string", - "readOnly": true, - "x-ms-enum": { - "name": "shareSubscriptionStatus", - "modelAsString": true - } - }, - "shareTerms": { - "description": "Terms of a share", + "termsOfUse": { + "description": "Terms of use shared when the invitation was created", "type": "string", "readOnly": true }, @@ -4205,27 +4292,6 @@ } } }, - "ConsumerSourceDataSetList": { - "description": "A consumer side list of source dataSets", - "required": [ - "value" - ], - "type": "object", - "properties": { - "nextLink": { - "description": "The Url of next result page.", - "type": "string" - }, - "value": { - "description": "Collection of items of type DataTransferObjects.", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/ConsumerSourceDataSet" - } - } - } - }, "ConsumerSourceDataSet": { "description": "A consumer side dataSet data transfer object.", "type": "object", @@ -4235,106 +4301,15 @@ } ], "properties": { - "properties": { - "$ref": "#/definitions/ConsumerSourceDataSetProperties", - "description": "source dataSet properties", - "x-ms-client-flatten": true - } - } - }, - "ConsumerSourceDataSetProperties": { - "description": "Properties of consumer source dataSet", - "type": "object", - "properties": { - "dataSetId": { - "description": "DataSet Id", - "type": "string", - "readOnly": true - }, - "dataSetLocation": { - "description": "Location of the data set.", - "type": "string", - "readOnly": true - }, - "dataSetName": { - "description": "DataSet name", - "type": "string", - "readOnly": true - }, - "dataSetPath": { - "description": "DataSet path", - "type": "string", - "readOnly": true - }, - "dataSetType": { - "description": "Type of data set", - "enum": [ - "Blob", - "Container", - "BlobFolder", - "AdlsGen2FileSystem", - "AdlsGen2Folder", - "AdlsGen2File", - "AdlsGen1Folder", - "AdlsGen1File", - "KustoCluster", - "KustoDatabase", - "SqlDBTable", - "SqlDWTable" - ], - "type": "string", - "readOnly": true, - "x-ms-enum": { - "name": "dataSetType", - "modelAsString": true - } - } - } - }, - "SourceShareSynchronizationSettingList": { - "description": "List response for get source share Synchronization settings", - "required": [ - "value" - ], - "type": "object", - "properties": { - "nextLink": { - "description": "The Url of next result page.", - "type": "string" - }, - "value": { - "description": "Collection of items of type DataTransferObjects.", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/SourceShareSynchronizationSetting" - } - } - } - }, - "SourceShareSynchronizationSetting": { - "description": "A view of synchronization setting added by the provider", - "required": [ - "kind" - ], - "type": "object", - "properties": { - "kind": { - "description": "Kind of synchronization", - "enum": [ - "ScheduleBased" - ], - "type": "string", - "x-ms-enum": { - "name": "kind", - "modelAsString": true - } + "properties": { + "$ref": "#/definitions/ConsumerSourceDataSetProperties", + "description": "source dataSet properties", + "x-ms-client-flatten": true } - }, - "discriminator": "kind" + } }, - "ShareSubscriptionSynchronizationList": { - "description": "A consumer side list of share subscription synchronizations", + "ConsumerSourceDataSetList": { + "description": "A consumer side list of source dataSets", "required": [ "value" ], @@ -4349,85 +4324,99 @@ "uniqueItems": false, "type": "array", "items": { - "$ref": "#/definitions/ShareSubscriptionSynchronization" + "$ref": "#/definitions/ConsumerSourceDataSet" } } } }, - "ShareSubscriptionSynchronization": { - "description": "A ShareSubscriptionSynchronization data transfer object.", - "required": [ - "synchronizationId" - ], + "ConsumerSourceDataSetProperties": { + "description": "Properties of consumer source dataSet", "type": "object", "properties": { - "durationMs": { - "format": "int32", - "description": "Synchronization duration", - "type": "integer", - "readOnly": true - }, - "endTime": { - "format": "date-time", - "description": "End time of synchronization", + "dataSetId": { + "description": "DataSet Id", "type": "string", "readOnly": true }, - "message": { - "description": "message of Synchronization", + "dataSetLocation": { + "description": "Location of the data set.", "type": "string", "readOnly": true }, - "startTime": { - "format": "date-time", - "description": "start time of synchronization", + "dataSetName": { + "description": "DataSet name", "type": "string", "readOnly": true }, - "status": { - "description": "Raw Status", + "dataSetPath": { + "description": "DataSet path", "type": "string", "readOnly": true }, - "synchronizationId": { - "description": "Synchronization id", - "type": "string" - }, - "synchronizationMode": { - "description": "Synchronization Mode", + "dataSetType": { + "description": "Type of data set", "enum": [ - "Incremental", - "FullSync" + "Blob", + "Container", + "BlobFolder", + "AdlsGen2FileSystem", + "AdlsGen2Folder", + "AdlsGen2File", + "AdlsGen1Folder", + "AdlsGen1File", + "KustoCluster", + "KustoDatabase", + "SqlDBTable", + "SqlDWTable" ], "type": "string", "readOnly": true, "x-ms-enum": { - "name": "synchronizationMode", + "name": "dataSetType", "modelAsString": true } } } }, - "Synchronize": { - "description": "Payload for the synchronizing the data.", + "DataSet": { + "description": "A DataSet data transfer object.", + "required": [ + "kind" + ], "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyDto" + } + ], "properties": { - "synchronizationMode": { - "description": "Mode of synchronization used in triggers and snapshot sync. Incremental by default", + "kind": { + "description": "Kind of data set.", "enum": [ - "Incremental", - "FullSync" + "Blob", + "Container", + "BlobFolder", + "AdlsGen2FileSystem", + "AdlsGen2Folder", + "AdlsGen2File", + "AdlsGen1Folder", + "AdlsGen1File", + "KustoCluster", + "KustoDatabase", + "SqlDBTable", + "SqlDWTable" ], "type": "string", "x-ms-enum": { - "name": "synchronizationMode", + "name": "kind", "modelAsString": true } } - } + }, + "discriminator": "kind" }, - "ShareSubscriptionList": { - "description": "List response for get ShareSubscription.", + "DataSetList": { + "description": "List response for get DataSets", "required": [ "value" ], @@ -4442,13 +4431,13 @@ "uniqueItems": false, "type": "array", "items": { - "$ref": "#/definitions/ShareSubscription" + "$ref": "#/definitions/DataSet" } } } }, - "SynchronizationSetting": { - "description": "A Synchronization Setting data transfer object.", + "DataSetMapping": { + "description": "A data set mapping data transfer object.", "required": [ "kind" ], @@ -4460,9 +4449,18 @@ ], "properties": { "kind": { - "description": "Kind of synchronization", + "description": "Kind of data set mapping.", "enum": [ - "ScheduleBased" + "Blob", + "Container", + "BlobFolder", + "AdlsGen2FileSystem", + "AdlsGen2Folder", + "AdlsGen2File", + "KustoCluster", + "KustoDatabase", + "SqlDBTable", + "SqlDWTable" ], "type": "string", "x-ms-enum": { @@ -4473,8 +4471,8 @@ }, "discriminator": "kind" }, - "SynchronizationSettingList": { - "description": "List response for get Synchronization settings", + "DataSetMappingList": { + "description": "List response for get DataSetMappings", "required": [ "value" ], @@ -4489,39 +4487,146 @@ "uniqueItems": false, "type": "array", "items": { - "$ref": "#/definitions/SynchronizationSetting" + "$ref": "#/definitions/DataSetMapping" } } } }, - "Trigger": { - "description": "A Trigger data transfer object.", + "DataShareError": { + "description": "The data share error model.", "required": [ - "kind" + "error" ], "type": "object", - "allOf": [ - { - "$ref": "#/definitions/ProxyDto" + "properties": { + "error": { + "$ref": "#/definitions/DataShareErrorInfo", + "description": "The data share error body" } + } + }, + "DataShareErrorInfo": { + "description": "The data share error body model.", + "required": [ + "code", + "message" ], + "type": "object", "properties": { - "kind": { - "description": "Kind of synchronization", + "code": { + "description": "Code of the error", + "type": "string" + }, + "details": { + "description": "Nested details of the error model", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/DataShareErrorInfo" + } + }, + "message": { + "description": "Message of the error", + "type": "string" + }, + "target": { + "description": "Target of the error", + "type": "string" + } + } + }, + "DefaultDto": { + "description": "Base data transfer object implementation for default resources.", + "type": "object", + "properties": { + "id": { + "description": "The resource id of the azure resource", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Location of the azure resource.", + "type": "string" + }, + "name": { + "description": "Name of the azure resource", + "type": "string", + "readOnly": true + }, + "tags": { + "description": "Tags on the azure resource.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "type": { + "description": "Type of the azure resource", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "DimensionProperties": { + "description": "properties for dimension", + "type": "object", + "properties": { + "displayName": { + "description": "localized display name of the dimension to customer", + "type": "string" + }, + "name": { + "description": "dimension name", + "type": "string" + } + } + }, + "Identity": { + "description": "Identity of resource", + "type": "object", + "properties": { + "principalId": { + "description": "service principal Id", + "type": "string", + "readOnly": true + }, + "tenantId": { + "description": "Tenant Id", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Identity Type", "enum": [ - "ScheduleBased" + "SystemAssigned" ], "type": "string", "x-ms-enum": { - "name": "kind", + "name": "type", "modelAsString": true } } - }, - "discriminator": "kind" + } + }, + "Invitation": { + "description": "A Invitation data transfer object.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyDto" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/InvitationProperties", + "description": "Properties on the Invitation", + "x-ms-client-flatten": true + } + } }, - "TriggerList": { - "description": "List response for get triggers", + "InvitationList": { + "description": "List response for get InvitationList", "required": [ "value" ], @@ -4536,88 +4641,73 @@ "uniqueItems": false, "type": "array", "items": { - "$ref": "#/definitions/Trigger" + "$ref": "#/definitions/Invitation" } } } }, - "ScheduledSynchronizationSetting": { - "description": "A type of synchronization setting based on schedule", - "required": [ - "properties", - "kind" - ], - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/SynchronizationSetting" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/ScheduledSynchronizationSettingProperties", - "description": "Properties of scheduled synchronization", - "x-ms-client-flatten": true - } - }, - "x-ms-discriminator-value": "ScheduleBased" - }, - "ScheduledSynchronizationSettingProperties": { - "description": "A Scheduled synchronization setting data transfer object.", - "required": [ - "recurrenceInterval", - "synchronizationTime" - ], + "InvitationProperties": { + "description": "Invitation property bag.", "type": "object", "properties": { - "createdAt": { - "format": "date-time", - "description": "Time at which the synchronization setting was created.", + "invitationId": { + "description": "unique invitation id", "type": "string", "readOnly": true }, - "provisioningState": { - "description": "Gets or sets the provisioning state", + "invitationStatus": { + "description": "The status of the invitation.", "enum": [ - "Succeeded", - "Creating", - "Deleting", - "Moving", - "Failed" + "Pending", + "Accepted", + "Rejected", + "Withdrawn" ], "type": "string", "readOnly": true, "x-ms-enum": { - "name": "provisioningState", + "name": "invitationStatus", "modelAsString": true } }, - "recurrenceInterval": { - "description": "Recurrence Interval", - "enum": [ - "Hour", - "Day" - ], + "respondedAt": { + "format": "date-time", + "description": "The time the recipient responded to the invitation.", "type": "string", - "x-ms-enum": { - "name": "recurrenceInterval", - "modelAsString": true - } + "readOnly": true }, - "synchronizationTime": { + "sentAt": { "format": "date-time", - "description": "Synchronization time", + "description": "Gets the time at which the invitation was sent.", + "type": "string", + "readOnly": true + }, + "targetActiveDirectoryId": { + "description": "The target Azure AD Id. Can't be combined with email.", + "type": "string" + }, + "targetEmail": { + "description": "The email the invitation is directed to.", + "type": "string" + }, + "targetObjectId": { + "description": "The target user or application Id that invitation is being sent to.\r\nMust be specified along TargetActiveDirectoryId. This enables sending\r\ninvitations to specific users or applications in an AD tenant.", "type": "string" }, + "userEmail": { + "description": "Email of the user who created the resource", + "type": "string", + "readOnly": true + }, "userName": { - "description": "Name of the user who created the synchronization setting.", + "description": "Name of the user who created the resource", "type": "string", "readOnly": true } } }, - "ScheduledTrigger": { - "description": "A type of trigger based on schedule", + "KustoClusterDataSet": { + "description": "A kusto cluster data set.", "required": [ "properties", "kind" @@ -4625,159 +4715,132 @@ "type": "object", "allOf": [ { - "$ref": "#/definitions/Trigger" + "$ref": "#/definitions/DataSet" } ], "properties": { "properties": { - "$ref": "#/definitions/ScheduledTriggerProperties", - "description": "Properties of scheduled synchronization", + "$ref": "#/definitions/KustoClusterDataSetProperties", + "description": "Kusto cluster data set properties.", "x-ms-client-flatten": true } }, - "x-ms-discriminator-value": "ScheduleBased" + "x-ms-discriminator-value": "KustoCluster" }, - "ScheduledTriggerProperties": { - "description": "A Scheduled trigger data transfer object.", + "KustoClusterDataSetMapping": { + "description": "A Kusto cluster data set mapping", "required": [ - "recurrenceInterval", - "synchronizationTime" + "properties", + "kind" ], "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSetMapping" + } + ], "properties": { - "createdAt": { - "format": "date-time", - "description": "Time at which the trigger was created.", - "type": "string", - "readOnly": true + "properties": { + "$ref": "#/definitions/KustoClusterDataSetMappingProperties", + "description": "Kusto cluster data set mapping properties.", + "x-ms-client-flatten": true + } + }, + "x-ms-discriminator-value": "KustoCluster" + }, + "KustoClusterDataSetMappingProperties": { + "description": "Properties of the Kusto cluster data set mapping", + "required": [ + "kustoClusterResourceId", + "dataSetId" + ], + "type": "object", + "properties": { + "dataSetId": { + "description": "The id of the source data set.", + "type": "string" }, - "provisioningState": { - "description": "Gets the provisioning state", + "dataSetMappingStatus": { + "description": "Gets the status of the data set mapping.", "enum": [ - "Succeeded", - "Creating", - "Deleting", - "Moving", - "Failed" + "Ok", + "Broken" ], "type": "string", "readOnly": true, "x-ms-enum": { - "name": "provisioningState", + "name": "dataSetMappingStatus", "modelAsString": true } }, - "recurrenceInterval": { - "description": "Recurrence Interval", - "enum": [ - "Hour", - "Day" - ], - "type": "string", - "x-ms-enum": { - "name": "recurrenceInterval", - "modelAsString": true - } + "kustoClusterResourceId": { + "description": "Resource id of the sink kusto cluster.", + "type": "string" }, - "synchronizationMode": { - "description": "Synchronization mode", - "enum": [ - "Incremental", - "FullSync" - ], + "location": { + "description": "Location of the sink kusto cluster.", "type": "string", - "x-ms-enum": { - "name": "synchronizationMode", - "modelAsString": true - } - }, - "synchronizationTime": { - "format": "date-time", - "description": "Synchronization time", - "type": "string" + "readOnly": true }, - "triggerStatus": { - "description": "Gets the trigger state", + "provisioningState": { + "description": "Provisioning state of the data set mapping.", "enum": [ - "Active", - "Inactive", - "SourceSynchronizationSettingDeleted" + "Succeeded", + "Creating", + "Deleting", + "Moving", + "Failed" ], "type": "string", "readOnly": true, "x-ms-enum": { - "name": "triggerStatus", + "name": "provisioningState", "modelAsString": true } - }, - "userName": { - "description": "Name of the user who created the trigger.", - "type": "string", - "readOnly": true } } }, - "BlobDataSet": { - "description": "An Azure storage blob data set.", - "required": [ - "properties", - "kind" - ], - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/DataSet" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/BlobProperties", - "description": "Blob data set properties.", - "x-ms-client-flatten": true - } - }, - "x-ms-discriminator-value": "Blob" - }, - "BlobProperties": { - "description": "Properties of the blob data set.", + "KustoClusterDataSetProperties": { + "description": "Properties of the kusto cluster data set.", "required": [ - "containerName", - "filePath", - "subscriptionId", - "resourceGroup", - "storageAccountName" + "kustoClusterResourceId" ], "type": "object", "properties": { - "containerName": { - "description": "Container that has the file path.", - "type": "string" - }, "dataSetId": { "description": "Unique id for identifying a data set resource", "type": "string", "readOnly": true }, - "filePath": { - "description": "File path within the source data set", - "type": "string" - }, - "resourceGroup": { - "description": "Resource group of storage account", + "kustoClusterResourceId": { + "description": "Resource id of the kusto cluster.", "type": "string" }, - "storageAccountName": { - "description": "Storage account name of the source data set", - "type": "string" + "location": { + "description": "Location of the kusto cluster.", + "type": "string", + "readOnly": true }, - "subscriptionId": { - "description": "Subscription id of storage account", - "type": "string" + "provisioningState": { + "description": "Provisioning state of the kusto cluster data set.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Moving", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } } } }, - "BlobFolderDataSet": { - "description": "An Azure storage blob folder data set.", + "KustoDatabaseDataSet": { + "description": "A kusto database data set.", "required": [ "properties", "kind" @@ -4790,53 +4853,15 @@ ], "properties": { "properties": { - "$ref": "#/definitions/BlobFolderProperties", - "description": "Blob folder data set properties.", + "$ref": "#/definitions/KustoDatabaseDataSetProperties", + "description": "Kusto database data set properties.", "x-ms-client-flatten": true } }, - "x-ms-discriminator-value": "BlobFolder" - }, - "BlobFolderProperties": { - "description": "Properties of the blob folder data set.", - "required": [ - "containerName", - "prefix", - "subscriptionId", - "resourceGroup", - "storageAccountName" - ], - "type": "object", - "properties": { - "containerName": { - "description": "Container that has the file path.", - "type": "string" - }, - "dataSetId": { - "description": "Unique id for identifying a data set resource", - "type": "string", - "readOnly": true - }, - "prefix": { - "description": "Prefix for blob folder", - "type": "string" - }, - "resourceGroup": { - "description": "Resource group of storage account", - "type": "string" - }, - "storageAccountName": { - "description": "Storage account name of the source data set", - "type": "string" - }, - "subscriptionId": { - "description": "Subscription id of storage account", - "type": "string" - } - } + "x-ms-discriminator-value": "KustoDatabase" }, - "BlobContainerDataSet": { - "description": "An Azure storage blob container data set.", + "KustoDatabaseDataSetMapping": { + "description": "A Kusto database data set mapping", "required": [ "properties", "kind" @@ -4844,80 +4869,74 @@ "type": "object", "allOf": [ { - "$ref": "#/definitions/DataSet" + "$ref": "#/definitions/DataSetMapping" } ], "properties": { "properties": { - "$ref": "#/definitions/BlobContainerProperties", - "description": "Blob container data set properties.", + "$ref": "#/definitions/KustoDatabaseDataSetMappingProperties", + "description": "Kusto database data set mapping properties.", "x-ms-client-flatten": true } }, - "x-ms-discriminator-value": "Container" + "x-ms-discriminator-value": "KustoDatabase" }, - "BlobContainerProperties": { - "description": "Properties of the BLOB container data set.", + "KustoDatabaseDataSetMappingProperties": { + "description": "Properties of the Kusto database data set mapping", "required": [ - "containerName", - "subscriptionId", - "resourceGroup", - "storageAccountName" + "kustoClusterResourceId", + "dataSetId" ], "type": "object", "properties": { - "containerName": { - "description": "BLOB Container name.", + "dataSetId": { + "description": "The id of the source data set.", "type": "string" }, - "dataSetId": { - "description": "Unique id for identifying a data set resource", + "dataSetMappingStatus": { + "description": "Gets the status of the data set mapping.", + "enum": [ + "Ok", + "Broken" + ], "type": "string", - "readOnly": true + "readOnly": true, + "x-ms-enum": { + "name": "dataSetMappingStatus", + "modelAsString": true + } }, - "resourceGroup": { - "description": "Resource group of storage account", + "kustoClusterResourceId": { + "description": "Resource id of the sink kusto cluster.", "type": "string" }, - "storageAccountName": { - "description": "Storage account name of the source data set", - "type": "string" + "location": { + "description": "Location of the sink kusto cluster.", + "type": "string", + "readOnly": true }, - "subscriptionId": { - "description": "Subscription id of storage account", - "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 + } } } }, - "ADLSGen2FileDataSet": { - "description": "An ADLS Gen 2 file data set.", - "required": [ - "properties", - "kind" - ], - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/DataSet" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/ADLSGen2FileProperties", - "description": "ADLS Gen 2 file data set properties.", - "x-ms-client-flatten": true - } - }, - "x-ms-discriminator-value": "AdlsGen2File" - }, - "ADLSGen2FileProperties": { - "description": "Properties of the ADLS Gen2 file data set.", + "KustoDatabaseDataSetProperties": { + "description": "Properties of the kusto database data set.", "required": [ - "fileSystem", - "filePath", - "subscriptionId", - "resourceGroup", - "storageAccountName" + "kustoDatabaseResourceId" ], "type": "object", "properties": { @@ -4926,482 +4945,492 @@ "type": "string", "readOnly": true }, - "filePath": { - "description": "File path within the file system.", - "type": "string" - }, - "fileSystem": { - "description": "File system to which the file belongs.", - "type": "string" - }, - "resourceGroup": { - "description": "Resource group of storage account", + "kustoDatabaseResourceId": { + "description": "Resource id of the kusto database.", "type": "string" }, - "storageAccountName": { - "description": "Storage account name of the source data set", - "type": "string" + "location": { + "description": "Location of the kusto cluster.", + "type": "string", + "readOnly": true }, - "subscriptionId": { - "description": "Subscription id of storage account", - "type": "string" + "provisioningState": { + "description": "Provisioning state of the kusto database data set.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Moving", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } } } }, - "ADLSGen2FolderDataSet": { - "description": "An ADLS Gen 2 folder data set.", + "OperationList": { + "description": "List response for get operations.", "required": [ - "properties", - "kind" + "value" ], "type": "object", - "allOf": [ - { - "$ref": "#/definitions/DataSet" - } - ], "properties": { - "properties": { - "$ref": "#/definitions/ADLSGen2FolderProperties", - "description": "ADLS Gen 2 folder data set properties.", - "x-ms-client-flatten": true + "nextLink": { + "description": "The Url of next result page.", + "type": "string" + }, + "value": { + "description": "Collection of items of type DataTransferObjects.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/OperationModel" + } } - }, - "x-ms-discriminator-value": "AdlsGen2Folder" + } + }, + "OperationMetaLogSpecification": { + "description": "log specifications for operation api", + "type": "object", + "properties": { + "blobDuration": { + "description": "blob duration of the log", + "type": "string" + }, + "displayName": { + "description": "localized name of the log category", + "type": "string" + }, + "name": { + "description": "name of the log category", + "type": "string" + } + } }, - "ADLSGen2FolderProperties": { - "description": "Properties of the ADLS Gen2 folder data set.", - "required": [ - "fileSystem", - "folderPath", - "subscriptionId", - "resourceGroup", - "storageAccountName" - ], + "OperationMetaMetricSpecification": { + "description": "metric specifications for the operation", "type": "object", "properties": { - "dataSetId": { - "description": "Unique id for identifying a data set resource", - "type": "string", - "readOnly": true + "aggregationType": { + "description": "aggregation type of metric", + "type": "string" }, - "fileSystem": { - "description": "File system to which the folder belongs.", + "dimensions": { + "description": "properties for dimension", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/DimensionProperties" + } + }, + "displayDescription": { + "description": "description of the metric", "type": "string" }, - "folderPath": { - "description": "Folder path within the file system.", + "displayName": { + "description": "localized name of the metric", "type": "string" }, - "resourceGroup": { - "description": "Resource group of storage account", + "enableRegionalMdmAccount": { + "description": "enable regional mdm account", "type": "string" }, - "storageAccountName": { - "description": "Storage account name of the source data set", + "internalMetricName": { + "description": "internal metric name", "type": "string" }, - "subscriptionId": { - "description": "Subscription id of storage account", + "name": { + "description": "name of the metric", + "type": "string" + }, + "resourceIdDimensionNameOverride": { + "description": "dimension name use to replace resource id if specified", + "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" + } + }, + "unit": { + "description": "units for the metric", "type": "string" } } }, - "ADLSGen2FileSystemDataSet": { - "description": "An ADLS Gen 2 file system data set.", - "required": [ - "properties", - "kind" - ], + "OperationMetaPropertyInfo": { + "description": "properties on meta info", "type": "object", - "allOf": [ - { - "$ref": "#/definitions/DataSet" - } - ], "properties": { - "properties": { - "$ref": "#/definitions/ADLSGen2FileSystemProperties", - "description": "ADLS Gen 2 file system data set properties.", - "x-ms-client-flatten": true + "serviceSpecification": { + "$ref": "#/definitions/OperationMetaServiceSpecification", + "description": "meta service specification" } - }, - "x-ms-discriminator-value": "AdlsGen2FileSystem" + } }, - "ADLSGen2FileSystemProperties": { - "description": "Properties of the ADLS Gen2 file system data set.", - "required": [ - "fileSystem", - "subscriptionId", - "resourceGroup", - "storageAccountName" - ], + "OperationMetaServiceSpecification": { + "description": "The operation meta service specification", "type": "object", "properties": { - "dataSetId": { - "description": "Unique id for identifying a data set resource", - "type": "string", - "readOnly": true - }, - "fileSystem": { - "description": "The file system name.", - "type": "string" - }, - "resourceGroup": { - "description": "Resource group of storage account", - "type": "string" - }, - "storageAccountName": { - "description": "Storage account name of the source data set", - "type": "string" + "logSpecifications": { + "description": "log specifications for the operation", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/OperationMetaLogSpecification" + } }, - "subscriptionId": { - "description": "Subscription id of storage account", - "type": "string" + "metricSpecifications": { + "description": "metric specifications for the operation", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/OperationMetaMetricSpecification" + } } } }, - "ADLSGen1FolderDataSet": { - "description": "An ADLS Gen 1 folder data set.", - "required": [ - "properties", - "kind" - ], + "OperationModel": { + "description": "The response model for get operations", "type": "object", - "allOf": [ - { - "$ref": "#/definitions/DataSet" - } - ], "properties": { + "display": { + "$ref": "#/definitions/OperationModelProperties", + "description": "Properties on the operation" + }, + "name": { + "description": "Operation name for display purposes", + "type": "string" + }, + "origin": { + "description": "origin of the operation", + "type": "string" + }, "properties": { - "$ref": "#/definitions/ADLSGen1FolderProperties", - "description": "ADLS Gen 1 folder data set properties.", + "$ref": "#/definitions/OperationMetaPropertyInfo", + "description": "properties for the operation meta info", "x-ms-client-flatten": true } - }, - "x-ms-discriminator-value": "AdlsGen1Folder" + } }, - "ADLSGen1FolderProperties": { - "description": "Properties of the ADLS Gen1 folder data set.", - "required": [ - "subscriptionId", - "resourceGroup", - "accountName", - "folderPath" - ], + "OperationModelProperties": { + "description": "Properties on operations", "type": "object", "properties": { - "accountName": { - "description": "The ADLS account name.", + "description": { + "description": "Description of the operation for display purposes", "type": "string" }, - "dataSetId": { - "description": "Unique id for identifying a data set resource", - "type": "string", - "readOnly": true - }, - "folderPath": { - "description": "The folder path within the ADLS account.", + "operation": { + "description": "Name of the operation for display purposes", "type": "string" }, - "resourceGroup": { - "description": "Resource group of ADLS account.", + "provider": { + "description": "Name of the provider for display purposes", "type": "string" }, - "subscriptionId": { - "description": "Subscription id of ADLS account.", + "resource": { + "description": "Name of the resource type for display purposes", "type": "string" } } }, - "ADLSGen1FileDataSet": { - "description": "An ADLS Gen 1 file data set.", - "required": [ - "properties", - "kind" - ], - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/DataSet" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/ADLSGen1FileProperties", - "description": "ADLS Gen 1 file data set properties.", - "x-ms-client-flatten": true - } - }, - "x-ms-discriminator-value": "AdlsGen1File" - }, - "ADLSGen1FileProperties": { - "description": "Properties of the ADLS Gen1 file data set.", + "OperationResponse": { + "description": "Response for long running operation", "required": [ - "subscriptionId", - "resourceGroup", - "accountName", - "folderPath", - "fileName" + "status" ], "type": "object", "properties": { - "accountName": { - "description": "The ADLS account name.", - "type": "string" - }, - "dataSetId": { - "description": "Unique id for identifying a data set resource", - "type": "string", - "readOnly": true - }, - "fileName": { - "description": "The file name in the ADLS account.", - "type": "string" - }, - "folderPath": { - "description": "The folder path within the ADLS account.", + "endTime": { + "format": "date-time", + "description": "start time", "type": "string" }, - "resourceGroup": { - "description": "Resource group of ADLS account.", - "type": "string" + "error": { + "$ref": "#/definitions/DataShareErrorInfo", + "description": "The error property when status is failed." }, - "subscriptionId": { - "description": "Subscription id of ADLS account.", + "startTime": { + "format": "date-time", + "description": "start time", "type": "string" + }, + "status": { + "description": "Operation state of the long running operation.", + "enum": [ + "Accepted", + "InProgress", + "TransientFailure", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "x-ms-enum": { + "name": "status", + "modelAsString": true + } } } }, - "KustoClusterDataSet": { - "description": "A kusto cluster data set.", - "required": [ - "properties", - "kind" - ], + "ProviderShareSubscription": { + "description": "A provider side share subscription data transfer object.", "type": "object", "allOf": [ { - "$ref": "#/definitions/DataSet" + "$ref": "#/definitions/ProxyDto" } ], "properties": { "properties": { - "$ref": "#/definitions/KustoClusterDataSetProperties", - "description": "Kusto cluster data set properties.", + "$ref": "#/definitions/ProviderShareSubscriptionProperties", + "description": "properties of providerShareSubscription", "x-ms-client-flatten": true } - }, - "x-ms-discriminator-value": "KustoCluster" + } }, - "KustoClusterDataSetProperties": { - "description": "Properties of the kusto cluster data set.", + "ProviderShareSubscriptionList": { + "description": "List response for get ShareSubscription.", "required": [ - "kustoClusterResourceId" + "value" ], "type": "object", "properties": { - "dataSetId": { - "description": "Unique id for identifying a data set resource", + "nextLink": { + "description": "The Url of next result page.", + "type": "string" + }, + "value": { + "description": "Collection of items of type DataTransferObjects.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderShareSubscription" + } + } + } + }, + "ProviderShareSubscriptionProperties": { + "description": "Provider share subscription properties", + "type": "object", + "properties": { + "consumerEmail": { + "description": "Email of the consumer who created the share subscription", "type": "string", "readOnly": true }, - "kustoClusterResourceId": { - "description": "Resource id of the kusto cluster.", - "type": "string" + "consumerName": { + "description": "Name of the consumer who created the share subscription", + "type": "string", + "readOnly": true }, - "location": { - "description": "Location of the kusto cluster.", + "consumerTenantName": { + "description": "Tenant name of the consumer who created the share subscription", "type": "string", "readOnly": true }, - "provisioningState": { - "description": "Provisioning state of the kusto cluster data set.", + "createdAt": { + "format": "date-time", + "description": "created at", + "type": "string", + "readOnly": true + }, + "providerEmail": { + "description": "Email of the provider who created the share", + "type": "string", + "readOnly": true + }, + "providerName": { + "description": "Name of the provider who created the share", + "type": "string", + "readOnly": true + }, + "sharedAt": { + "format": "date-time", + "description": "Shared at", + "type": "string", + "readOnly": true + }, + "shareSubscriptionObjectId": { + "description": "share Subscription Object Id", + "type": "string", + "readOnly": true + }, + "shareSubscriptionStatus": { + "description": "Gets the status of share subscription", "enum": [ - "Succeeded", - "Creating", - "Deleting", - "Moving", - "Failed" + "Active", + "Revoked", + "SourceDeleted", + "Revoking" ], "type": "string", "readOnly": true, "x-ms-enum": { - "name": "provisioningState", + "name": "shareSubscriptionStatus", "modelAsString": true } } } }, - "KustoDatabaseDataSet": { - "description": "A kusto database data set.", - "required": [ - "properties", - "kind" - ], - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/DataSet" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/KustoDatabaseDataSetProperties", - "description": "Kusto database data set properties.", - "x-ms-client-flatten": true - } - }, - "x-ms-discriminator-value": "KustoDatabase" - }, - "KustoDatabaseDataSetProperties": { - "description": "Properties of the kusto database data set.", - "required": [ - "kustoDatabaseResourceId" - ], + "ProxyDto": { + "description": "Base data transfer object implementation for proxy resources.", "type": "object", "properties": { - "dataSetId": { - "description": "Unique id for identifying a data set resource", + "id": { + "description": "The resource id of the azure resource", "type": "string", "readOnly": true }, - "kustoDatabaseResourceId": { - "description": "Resource id of the kusto database.", - "type": "string" - }, - "location": { - "description": "Location of the kusto cluster.", + "name": { + "description": "Name of the azure resource", "type": "string", "readOnly": true }, - "provisioningState": { - "description": "Provisioning state of the kusto database data set.", + "type": { + "description": "Type of the azure resource", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ScheduledSourceShareSynchronizationSettingProperties": { + "description": "A Scheduled source synchronization setting data transfer object.", + "type": "object", + "properties": { + "recurrenceInterval": { + "description": "Recurrence Interval", "enum": [ - "Succeeded", - "Creating", - "Deleting", - "Moving", - "Failed" + "Hour", + "Day" ], "type": "string", - "readOnly": true, "x-ms-enum": { - "name": "provisioningState", + "name": "recurrenceInterval", "modelAsString": true } + }, + "synchronizationTime": { + "format": "date-time", + "description": "Synchronization time", + "type": "string" } } }, - "SqlDWTableDataSet": { - "description": "A SQL DW table data set.", + "ScheduledSourceSynchronizationSetting": { + "description": "A type of synchronization setting based on schedule", "required": [ "kind" ], "type": "object", "allOf": [ { - "$ref": "#/definitions/DataSet" + "$ref": "#/definitions/SourceShareSynchronizationSetting" } ], "properties": { "properties": { - "$ref": "#/definitions/SqlDWTableProperties", - "description": "SQL DW table data set properties.", + "$ref": "#/definitions/ScheduledSourceShareSynchronizationSettingProperties", + "description": "Properties of scheduled synchronization", "x-ms-client-flatten": true } }, - "x-ms-discriminator-value": "SqlDWTable" - }, - "SqlDWTableProperties": { - "description": "Properties of the SQL DW table data set.", - "required": [ - "dataWarehouseName", - "tableName", - "schemaName", - "sqlServerResourceId" - ], - "type": "object", - "properties": { - "dataSetId": { - "description": "Unique id for identifying a data set resource", - "type": "string", - "readOnly": true - }, - "dataWarehouseName": { - "description": "DataWarehouse name of the source data set", - "type": "string" - }, - "schemaName": { - "description": "Schema of the table. Default value is dbo.", - "type": "string" - }, - "sqlServerResourceId": { - "description": "Resource id of SQL server", - "type": "string" - }, - "tableName": { - "description": "SQL DW table name.", - "type": "string" - } - } + "x-ms-discriminator-value": "ScheduleBased" }, - "SqlDBTableDataSet": { - "description": "A SQL DB table data set.", + "ScheduledSynchronizationSetting": { + "description": "A type of synchronization setting based on schedule", "required": [ + "properties", "kind" ], "type": "object", "allOf": [ { - "$ref": "#/definitions/DataSet" + "$ref": "#/definitions/SynchronizationSetting" } ], "properties": { "properties": { - "$ref": "#/definitions/SqlDBTableProperties", - "description": "SQL DB table data set properties.", + "$ref": "#/definitions/ScheduledSynchronizationSettingProperties", + "description": "Properties of scheduled synchronization", "x-ms-client-flatten": true } }, - "x-ms-discriminator-value": "SqlDBTable" + "x-ms-discriminator-value": "ScheduleBased" }, - "SqlDBTableProperties": { - "description": "Properties of the SQL DB table data set.", - "required": [ - "databaseName", - "tableName", - "schemaName", - "sqlServerResourceId" + "ScheduledSynchronizationSettingProperties": { + "description": "A Scheduled synchronization setting data transfer object.", + "required": [ + "recurrenceInterval", + "synchronizationTime" ], "type": "object", "properties": { - "databaseName": { - "description": "Database name of the source data set", - "type": "string" - }, - "dataSetId": { - "description": "Unique id for identifying a data set resource", + "createdAt": { + "format": "date-time", + "description": "Time at which the synchronization setting was created.", "type": "string", "readOnly": true }, - "schemaName": { - "description": "Schema of the table. Default value is dbo.", - "type": "string" + "provisioningState": { + "description": "Gets or sets the provisioning state", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Moving", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } }, - "sqlServerResourceId": { - "description": "Resource id of SQL server", - "type": "string" + "recurrenceInterval": { + "description": "Recurrence Interval", + "enum": [ + "Hour", + "Day" + ], + "type": "string", + "x-ms-enum": { + "name": "recurrenceInterval", + "modelAsString": true + } }, - "tableName": { - "description": "SQL DB table name.", + "synchronizationTime": { + "format": "date-time", + "description": "Synchronization time", "type": "string" + }, + "userName": { + "description": "Name of the user who created the synchronization setting.", + "type": "string", + "readOnly": true } } }, - "BlobDataSetMapping": { - "description": "A Blob data set mapping.", + "ScheduledTrigger": { + "description": "A type of trigger based on schedule", "required": [ "properties", "kind" @@ -5409,157 +5438,151 @@ "type": "object", "allOf": [ { - "$ref": "#/definitions/DataSetMapping" + "$ref": "#/definitions/Trigger" } ], "properties": { "properties": { - "$ref": "#/definitions/BlobMappingProperties", - "description": "Blob data set mapping properties.", + "$ref": "#/definitions/ScheduledTriggerProperties", + "description": "Properties of scheduled synchronization", "x-ms-client-flatten": true } }, - "x-ms-discriminator-value": "Blob" + "x-ms-discriminator-value": "ScheduleBased" }, - "BlobMappingProperties": { - "description": "Azure storage Blob data set mapping property bag.", + "ScheduledTriggerProperties": { + "description": "A Scheduled trigger data transfer object.", "required": [ - "containerName", - "filePath", - "subscriptionId", - "resourceGroup", - "storageAccountName", - "dataSetId" + "recurrenceInterval", + "synchronizationTime" ], "type": "object", "properties": { - "containerName": { - "description": "Container that has the file path.", - "type": "string" - }, - "dataSetId": { - "description": "The id of the source data set.", - "type": "string" + "createdAt": { + "format": "date-time", + "description": "Time at which the trigger was created.", + "type": "string", + "readOnly": true }, - "dataSetMappingStatus": { - "description": "Gets the status of the data set mapping.", + "provisioningState": { + "description": "Gets the provisioning state", "enum": [ - "Ok", - "Broken" + "Succeeded", + "Creating", + "Deleting", + "Moving", + "Failed" ], "type": "string", "readOnly": true, "x-ms-enum": { - "name": "dataSetMappingStatus", + "name": "provisioningState", "modelAsString": true } }, - "filePath": { - "description": "File path within the source data set", - "type": "string" - }, - "outputType": { - "description": "File output type", + "recurrenceInterval": { + "description": "Recurrence Interval", "enum": [ - "Csv", - "Parquet" + "Hour", + "Day" ], "type": "string", "x-ms-enum": { - "name": "outputType", + "name": "recurrenceInterval", "modelAsString": true } }, - "provisioningState": { - "description": "Provisioning state of the data set mapping.", + "synchronizationMode": { + "description": "Synchronization mode", "enum": [ - "Succeeded", - "Creating", - "Deleting", - "Moving", - "Failed" + "Incremental", + "FullSync" ], "type": "string", - "readOnly": true, "x-ms-enum": { - "name": "provisioningState", + "name": "synchronizationMode", "modelAsString": true } }, - "resourceGroup": { - "description": "Resource group of storage account.", + "synchronizationTime": { + "format": "date-time", + "description": "Synchronization time", "type": "string" }, - "storageAccountName": { - "description": "Storage account name of the source data set.", - "type": "string" + "triggerStatus": { + "description": "Gets the trigger state", + "enum": [ + "Active", + "Inactive", + "SourceSynchronizationSettingDeleted" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "triggerStatus", + "modelAsString": true + } }, - "subscriptionId": { - "description": "Subscription id of storage account.", - "type": "string" + "userName": { + "description": "Name of the user who created the trigger.", + "type": "string", + "readOnly": true } } }, - "BlobFolderDataSetMapping": { - "description": "A Blob folder data set mapping.", - "required": [ - "properties", - "kind" - ], + "Share": { + "description": "A share data transfer object.", "type": "object", "allOf": [ { - "$ref": "#/definitions/DataSetMapping" + "$ref": "#/definitions/ProxyDto" } ], "properties": { "properties": { - "$ref": "#/definitions/BlobFolderMappingProperties", - "description": "Blob folder data set mapping properties.", + "$ref": "#/definitions/ShareProperties", + "description": "Properties on the share", "x-ms-client-flatten": true } - }, - "x-ms-discriminator-value": "BlobFolder" + } }, - "BlobFolderMappingProperties": { - "description": "Azure storage Blob folder data set mapping property bag.", + "ShareList": { + "description": "List response for get Shares.", "required": [ - "containerName", - "prefix", - "subscriptionId", - "resourceGroup", - "storageAccountName", - "dataSetId" + "value" ], "type": "object", "properties": { - "containerName": { - "description": "Container that has the file path.", - "type": "string" - }, - "dataSetId": { - "description": "The id of the source data set.", + "nextLink": { + "description": "The Url of next result page.", "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 + "value": { + "description": "Collection of items of type DataTransferObjects.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/Share" } + } + } + }, + "ShareProperties": { + "description": "Share property bag.", + "type": "object", + "properties": { + "createdAt": { + "format": "date-time", + "description": "Time at which the share was created.", + "type": "string", + "readOnly": true }, - "prefix": { - "description": "Prefix for blob folder", + "description": { + "description": "Share description.", "type": "string" }, "provisioningState": { - "description": "Provisioning state of the data set mapping.", + "description": "Gets or sets the provisioning state", "enum": [ "Succeeded", "Creating", @@ -5574,75 +5597,108 @@ "modelAsString": true } }, - "resourceGroup": { - "description": "Resource group of storage account.", - "type": "string" + "shareKind": { + "description": "Share kind.", + "enum": [ + "CopyBased", + "InPlace" + ], + "type": "string", + "x-ms-enum": { + "name": "shareKind", + "modelAsString": true + } }, - "storageAccountName": { - "description": "Storage account name of the source data set.", + "terms": { + "description": "Share terms.", "type": "string" }, - "subscriptionId": { - "description": "Subscription id of storage account.", - "type": "string" + "userEmail": { + "description": "Email of the user who created the resource", + "type": "string", + "readOnly": true + }, + "userName": { + "description": "Name of the user who created the resource", + "type": "string", + "readOnly": true } } }, - "BlobContainerDataSetMapping": { - "description": "A Blob container data set mapping.", + "ShareSubscription": { + "description": "A share subscription data transfer object.", "required": [ - "properties", - "kind" + "properties" ], "type": "object", "allOf": [ { - "$ref": "#/definitions/DataSetMapping" + "$ref": "#/definitions/ProxyDto" } ], "properties": { "properties": { - "$ref": "#/definitions/BlobContainerMappingProperties", - "description": "Blob container data set mapping properties.", + "$ref": "#/definitions/ShareSubscriptionProperties", + "description": "Properties on the share subscription", "x-ms-client-flatten": true } - }, - "x-ms-discriminator-value": "Container" + } }, - "BlobContainerMappingProperties": { - "description": "Azure storage Blob container data set mapping property bag.", + "ShareSubscriptionList": { + "description": "List response for get ShareSubscription.", "required": [ - "containerName", - "subscriptionId", - "resourceGroup", - "storageAccountName", - "dataSetId" + "value" ], "type": "object", "properties": { - "containerName": { - "description": "BLOB Container name.", + "nextLink": { + "description": "The Url of next result page.", "type": "string" }, - "dataSetId": { - "description": "The id of the source data set.", + "value": { + "description": "Collection of items of type DataTransferObjects.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ShareSubscription" + } + } + } + }, + "ShareSubscriptionProperties": { + "description": "Share subscription property bag.", + "required": [ + "invitationId" + ], + "type": "object", + "properties": { + "createdAt": { + "format": "date-time", + "description": "Time at which the share subscription was created.", + "type": "string", + "readOnly": true + }, + "invitationId": { + "description": "The invitation id.", "type": "string" }, - "dataSetMappingStatus": { - "description": "Gets the status of the data set mapping.", - "enum": [ - "Ok", - "Broken" - ], + "providerEmail": { + "description": "Email of the provider who created the resource", "type": "string", - "readOnly": true, - "x-ms-enum": { - "name": "dataSetMappingStatus", - "modelAsString": true - } + "readOnly": true + }, + "providerName": { + "description": "Name of the provider who created the resource", + "type": "string", + "readOnly": true + }, + "providerTenantName": { + "description": "Tenant name of the provider who created the resource", + "type": "string", + "readOnly": true }, "provisioningState": { - "description": "Provisioning state of the data set mapping.", + "description": "Provisioning state of the share subscription", "enum": [ "Succeeded", "Creating", @@ -5657,210 +5713,279 @@ "modelAsString": true } }, - "resourceGroup": { - "description": "Resource group of storage account.", - "type": "string" + "shareDescription": { + "description": "Description of share", + "type": "string", + "readOnly": true }, - "storageAccountName": { - "description": "Storage account name of the source data set.", - "type": "string" + "shareKind": { + "description": "Kind of share", + "enum": [ + "CopyBased", + "InPlace" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "shareKind", + "modelAsString": true + } }, - "subscriptionId": { - "description": "Subscription id of storage account.", - "type": "string" + "shareName": { + "description": "Name of the share", + "type": "string", + "readOnly": true + }, + "shareSubscriptionStatus": { + "description": "Gets the current status of share subscription.", + "enum": [ + "Active", + "Revoked", + "SourceDeleted", + "Revoking" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "shareSubscriptionStatus", + "modelAsString": true + } + }, + "shareTerms": { + "description": "Terms of a share", + "type": "string", + "readOnly": true + }, + "userEmail": { + "description": "Email of the user who created the resource", + "type": "string", + "readOnly": true + }, + "userName": { + "description": "Name of the user who created the resource", + "type": "string", + "readOnly": true } } }, - "ADLSGen2FileDataSetMapping": { - "description": "An ADLS Gen2 file data set mapping.", + "ShareSubscriptionSynchronization": { + "description": "A ShareSubscriptionSynchronization data transfer object.", "required": [ - "properties", - "kind" + "synchronizationId" ], "type": "object", - "allOf": [ - { - "$ref": "#/definitions/DataSetMapping" - } - ], "properties": { - "properties": { - "$ref": "#/definitions/ADLSGen2FileDataSetMappingProperties", - "description": "ADLS Gen2 file data set mapping properties.", - "x-ms-client-flatten": true + "durationMs": { + "format": "int32", + "description": "Synchronization duration", + "type": "integer", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "End time of synchronization", + "type": "string", + "readOnly": true + }, + "message": { + "description": "message of Synchronization", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "start time of synchronization", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Raw Status", + "type": "string", + "readOnly": true + }, + "synchronizationId": { + "description": "Synchronization id", + "type": "string" + }, + "synchronizationMode": { + "description": "Synchronization Mode", + "enum": [ + "Incremental", + "FullSync" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "synchronizationMode", + "modelAsString": true + } } - }, - "x-ms-discriminator-value": "AdlsGen2File" + } }, - "ADLSGen2FileDataSetMappingProperties": { - "description": "ADLS Gen 2 file data set mapping property bag.", + "ShareSubscriptionSynchronizationList": { + "description": "A consumer side list of share subscription synchronizations", "required": [ - "fileSystem", - "filePath", - "subscriptionId", - "resourceGroup", - "storageAccountName", - "dataSetId" + "value" ], "type": "object", "properties": { - "dataSetId": { - "description": "The id of the source data set.", + "nextLink": { + "description": "The Url of next result page.", + "type": "string" + }, + "value": { + "description": "Collection of items of type DataTransferObjects.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ShareSubscriptionSynchronization" + } + } + } + }, + "ShareSynchronization": { + "description": "A ShareSynchronization data transfer object.", + "type": "object", + "properties": { + "consumerEmail": { + "description": "Email of the user who created the synchronization", + "type": "string" + }, + "consumerName": { + "description": "Name of the user who created the synchronization", + "type": "string" + }, + "consumerTenantName": { + "description": "Tenant name of the consumer who created the synchronization", + "type": "string" + }, + "durationMs": { + "format": "int32", + "description": "synchronization duration", + "type": "integer" + }, + "endTime": { + "format": "date-time", + "description": "End time of synchronization", "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 - } + "message": { + "description": "message of synchronization", + "type": "string" }, - "filePath": { - "description": "File path within the file system.", + "startTime": { + "format": "date-time", + "description": "start time of synchronization", "type": "string" }, - "fileSystem": { - "description": "File system to which the file belongs.", + "status": { + "description": "Raw Status", "type": "string" }, - "outputType": { - "description": "Type of output file", - "enum": [ - "Csv", - "Parquet" - ], - "type": "string", - "x-ms-enum": { - "name": "outputType", - "modelAsString": true - } + "synchronizationId": { + "description": "Synchronization id", + "type": "string" }, - "provisioningState": { - "description": "Provisioning state of the data set mapping.", + "synchronizationMode": { + "description": "Synchronization mode", "enum": [ - "Succeeded", - "Creating", - "Deleting", - "Moving", - "Failed" + "Incremental", + "FullSync" ], "type": "string", "readOnly": true, "x-ms-enum": { - "name": "provisioningState", + "name": "synchronizationMode", "modelAsString": true } - }, - "resourceGroup": { - "description": "Resource group of storage account.", - "type": "string" - }, - "storageAccountName": { - "description": "Storage account name of the source data set.", - "type": "string" - }, - "subscriptionId": { - "description": "Subscription id of storage account.", - "type": "string" } } }, - "ADLSGen2FolderDataSetMapping": { - "description": "An ADLS Gen2 folder data set mapping.", + "ShareSynchronizationList": { + "description": "List response for get ShareSynchronization.", "required": [ - "properties", - "kind" + "value" ], "type": "object", - "allOf": [ - { - "$ref": "#/definitions/DataSetMapping" - } - ], "properties": { - "properties": { - "$ref": "#/definitions/ADLSGen2FolderDataSetMappingProperties", - "description": "ADLS Gen2 folder data set mapping properties.", - "x-ms-client-flatten": true + "nextLink": { + "description": "The Url of next result page.", + "type": "string" + }, + "value": { + "description": "Collection of items of type DataTransferObjects.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ShareSynchronization" + } } - }, - "x-ms-discriminator-value": "AdlsGen2Folder" + } }, - "ADLSGen2FolderDataSetMappingProperties": { - "description": "ADLS Gen 2 folder data set mapping property bag.", + "SourceShareSynchronizationSetting": { + "description": "A view of synchronization setting added by the provider", "required": [ - "fileSystem", - "folderPath", - "subscriptionId", - "resourceGroup", - "storageAccountName", - "dataSetId" + "kind" ], "type": "object", "properties": { - "dataSetId": { - "description": "The id of the source data set.", - "type": "string" - }, - "dataSetMappingStatus": { - "description": "Gets the status of the data set mapping.", + "kind": { + "description": "Kind of synchronization", "enum": [ - "Ok", - "Broken" + "ScheduleBased" ], "type": "string", - "readOnly": true, "x-ms-enum": { - "name": "dataSetMappingStatus", + "name": "kind", "modelAsString": true } - }, - "fileSystem": { - "description": "File system to which the folder belongs.", - "type": "string" - }, - "folderPath": { - "description": "Folder path within the file system.", + } + }, + "discriminator": "kind" + }, + "SourceShareSynchronizationSettingList": { + "description": "List response for get source share Synchronization settings", + "required": [ + "value" + ], + "type": "object", + "properties": { + "nextLink": { + "description": "The Url of next result page.", "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 + "value": { + "description": "Collection of items of type DataTransferObjects.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SourceShareSynchronizationSetting" } - }, - "resourceGroup": { - "description": "Resource group of storage account.", - "type": "string" - }, - "storageAccountName": { - "description": "Storage account name of the source data set.", - "type": "string" - }, - "subscriptionId": { - "description": "Subscription id of storage account.", - "type": "string" } } }, - "ADLSGen2FileSystemDataSetMapping": { - "description": "An ADLS Gen2 file system data set mapping.", + "SqlDBTableDataSet": { + "description": "A SQL DB table data set.", + "required": [ + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSet" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SqlDBTableProperties", + "description": "SQL DB table data set properties.", + "x-ms-client-flatten": true + } + }, + "x-ms-discriminator-value": "SqlDBTable" + }, + "SqlDBTableDataSetMapping": { + "description": "A SQL DB Table data set mapping.", "required": [ "properties", "kind" @@ -5873,24 +5998,28 @@ ], "properties": { "properties": { - "$ref": "#/definitions/ADLSGen2FileSystemDataSetMappingProperties", - "description": "ADLS Gen2 file system data set mapping properties.", + "$ref": "#/definitions/SqlDBTableDataSetMappingProperties", + "description": "Sql DB data set mapping properties.", "x-ms-client-flatten": true } }, - "x-ms-discriminator-value": "AdlsGen2FileSystem" + "x-ms-discriminator-value": "SqlDBTable" }, - "ADLSGen2FileSystemDataSetMappingProperties": { - "description": "ADLS Gen 2 file system data set mapping property bag.", + "SqlDBTableDataSetMappingProperties": { + "description": "Properties of the SQL DB table data set mapping.", "required": [ - "fileSystem", - "subscriptionId", - "resourceGroup", - "storageAccountName", + "databaseName", + "tableName", + "schemaName", + "sqlServerResourceId", "dataSetId" ], "type": "object", "properties": { + "databaseName": { + "description": "DatabaseName name of the sink data set", + "type": "string" + }, "dataSetId": { "description": "The id of the source data set.", "type": "string" @@ -5908,10 +6037,6 @@ "modelAsString": true } }, - "fileSystem": { - "description": "The file system name.", - "type": "string" - }, "provisioningState": { "description": "Provisioning state of the data set mapping.", "enum": [ @@ -5928,22 +6053,75 @@ "modelAsString": true } }, - "resourceGroup": { - "description": "Resource group of storage account.", + "schemaName": { + "description": "Schema of the table. Default value is dbo.", + "type": "string" + }, + "sqlServerResourceId": { + "description": "Resource id of SQL server", + "type": "string" + }, + "tableName": { + "description": "SQL DB table name.", + "type": "string" + } + } + }, + "SqlDBTableProperties": { + "description": "Properties of the SQL DB table data set.", + "required": [ + "databaseName", + "tableName", + "schemaName", + "sqlServerResourceId" + ], + "type": "object", + "properties": { + "databaseName": { + "description": "Database name of the source data set", + "type": "string" + }, + "dataSetId": { + "description": "Unique id for identifying a data set resource", + "type": "string", + "readOnly": true + }, + "schemaName": { + "description": "Schema of the table. Default value is dbo.", "type": "string" }, - "storageAccountName": { - "description": "Storage account name of the source data set.", + "sqlServerResourceId": { + "description": "Resource id of SQL server", "type": "string" }, - "subscriptionId": { - "description": "Subscription id of storage account.", + "tableName": { + "description": "SQL DB table name.", "type": "string" } } }, - "KustoClusterDataSetMapping": { - "description": "A Kusto cluster data set mapping", + "SqlDWTableDataSet": { + "description": "A SQL DW table data set.", + "required": [ + "kind" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataSet" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SqlDWTableProperties", + "description": "SQL DW table data set properties.", + "x-ms-client-flatten": true + } + }, + "x-ms-discriminator-value": "SqlDWTable" + }, + "SqlDWTableDataSetMapping": { + "description": "A SQL DW Table data set mapping.", "required": [ "properties", "kind" @@ -5956,17 +6134,20 @@ ], "properties": { "properties": { - "$ref": "#/definitions/KustoClusterDataSetMappingProperties", - "description": "Kusto cluster data set mapping properties.", + "$ref": "#/definitions/SqlDWTableDataSetMappingProperties", + "description": "Sql DW data set mapping properties.", "x-ms-client-flatten": true } }, - "x-ms-discriminator-value": "KustoCluster" + "x-ms-discriminator-value": "SqlDWTable" }, - "KustoClusterDataSetMappingProperties": { - "description": "Properties of the Kusto cluster data set mapping", + "SqlDWTableDataSetMappingProperties": { + "description": "Properties of the SQL DW table data set mapping.", "required": [ - "kustoClusterResourceId", + "dataWarehouseName", + "tableName", + "schemaName", + "sqlServerResourceId", "dataSetId" ], "type": "object", @@ -5988,15 +6169,10 @@ "modelAsString": true } }, - "kustoClusterResourceId": { - "description": "Resource id of the sink kusto cluster.", + "dataWarehouseName": { + "description": "DataWarehouse name of the source data set", "type": "string" }, - "location": { - "description": "Location of the sink kusto cluster.", - "type": "string", - "readOnly": true - }, "provisioningState": { "description": "Provisioning state of the data set mapping.", "enum": [ @@ -6012,345 +6188,295 @@ "name": "provisioningState", "modelAsString": true } + }, + "schemaName": { + "description": "Schema of the table. Default value is dbo.", + "type": "string" + }, + "sqlServerResourceId": { + "description": "Resource id of SQL server", + "type": "string" + }, + "tableName": { + "description": "SQL DW table name.", + "type": "string" } } }, - "KustoDatabaseDataSetMapping": { - "description": "A Kusto database data set mapping", + "SqlDWTableProperties": { + "description": "Properties of the SQL DW table data set.", "required": [ - "properties", - "kind" + "dataWarehouseName", + "tableName", + "schemaName", + "sqlServerResourceId" ], "type": "object", - "allOf": [ - { - "$ref": "#/definitions/DataSetMapping" - } - ], "properties": { - "properties": { - "$ref": "#/definitions/KustoDatabaseDataSetMappingProperties", - "description": "Kusto database data set mapping properties.", - "x-ms-client-flatten": true + "dataSetId": { + "description": "Unique id for identifying a data set resource", + "type": "string", + "readOnly": true + }, + "dataWarehouseName": { + "description": "DataWarehouse name of the source data set", + "type": "string" + }, + "schemaName": { + "description": "Schema of the table. Default value is dbo.", + "type": "string" + }, + "sqlServerResourceId": { + "description": "Resource id of SQL server", + "type": "string" + }, + "tableName": { + "description": "SQL DW table name.", + "type": "string" } - }, - "x-ms-discriminator-value": "KustoDatabase" + } }, - "KustoDatabaseDataSetMappingProperties": { - "description": "Properties of the Kusto database data set mapping", - "required": [ - "kustoClusterResourceId", - "dataSetId" - ], + "SynchronizationDetails": { + "description": "Synchronization details at data set level", "type": "object", "properties": { "dataSetId": { - "description": "The id of the source data set.", - "type": "string" + "description": "Id of data set", + "type": "string", + "readOnly": true }, - "dataSetMappingStatus": { - "description": "Gets the status of the data set mapping.", + "dataSetType": { + "description": "Type of the data set", "enum": [ - "Ok", - "Broken" + "Blob", + "Container", + "BlobFolder", + "AdlsGen2FileSystem", + "AdlsGen2Folder", + "AdlsGen2File", + "AdlsGen1Folder", + "AdlsGen1File", + "KustoCluster", + "KustoDatabase", + "SqlDBTable", + "SqlDWTable" ], "type": "string", "readOnly": true, "x-ms-enum": { - "name": "dataSetMappingStatus", + "name": "dataSetType", "modelAsString": true } }, - "kustoClusterResourceId": { - "description": "Resource id of the sink kusto cluster.", - "type": "string" + "durationMs": { + "format": "int32", + "description": "Duration of data set level copy", + "type": "integer", + "readOnly": true }, - "location": { - "description": "Location of the sink kusto cluster.", + "endTime": { + "format": "date-time", + "description": "End time of data set level copy", "type": "string", "readOnly": true }, - "provisioningState": { - "description": "Provisioning state of the data set mapping.", - "enum": [ - "Succeeded", - "Creating", - "Deleting", - "Moving", - "Failed" - ], + "filesRead": { + "format": "int64", + "description": "The number of files read from the source data set", + "type": "integer", + "readOnly": true + }, + "filesWritten": { + "format": "int64", + "description": "The number of files written into the sink data set", + "type": "integer", + "readOnly": true + }, + "message": { + "description": "Error message if any", "type": "string", - "readOnly": true, - "x-ms-enum": { - "name": "provisioningState", - "modelAsString": true - } - } - } - }, - "SqlDWTableDataSetMapping": { - "description": "A SQL DW Table data set mapping.", - "required": [ - "properties", - "kind" - ], - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/DataSetMapping" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/SqlDWTableDataSetMappingProperties", - "description": "Sql DW data set mapping properties.", - "x-ms-client-flatten": true + "readOnly": true + }, + "name": { + "description": "Name of the data set", + "type": "string", + "readOnly": true + }, + "rowsCopied": { + "format": "int64", + "description": "The number of files copied into the sink data set", + "type": "integer", + "readOnly": true + }, + "rowsRead": { + "format": "int64", + "description": "The number of rows read from the source data set.", + "type": "integer", + "readOnly": true + }, + "sizeRead": { + "format": "int64", + "description": "The size of the data read from the source data set in bytes", + "type": "integer", + "readOnly": true + }, + "sizeWritten": { + "format": "int64", + "description": "The size of the data written into the sink data set in bytes", + "type": "integer", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "Start time of data set level copy", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Raw Status", + "type": "string", + "readOnly": true + }, + "vCore": { + "format": "int64", + "description": "The vCore units consumed for the data set synchronization", + "type": "integer", + "readOnly": true } - }, - "x-ms-discriminator-value": "SqlDWTable" + } }, - "SqlDWTableDataSetMappingProperties": { - "description": "Properties of the SQL DW table data set mapping.", + "SynchronizationDetailsList": { + "description": "details of synchronization", "required": [ - "dataWarehouseName", - "tableName", - "schemaName", - "sqlServerResourceId", - "dataSetId" + "value" ], "type": "object", "properties": { - "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 - } - }, - "dataWarehouseName": { - "description": "DataWarehouse name of the source data set", + "nextLink": { + "description": "The Url of next result page.", "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 + "value": { + "description": "Collection of items of type DataTransferObjects.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SynchronizationDetails" } - }, - "schemaName": { - "description": "Schema of the table. Default value is dbo.", - "type": "string" - }, - "sqlServerResourceId": { - "description": "Resource id of SQL server", - "type": "string" - }, - "tableName": { - "description": "SQL DW table name.", - "type": "string" } } }, - "SqlDBTableDataSetMapping": { - "description": "A SQL DB Table data set mapping.", + "SynchronizationSetting": { + "description": "A Synchronization Setting data transfer object.", "required": [ - "properties", "kind" ], "type": "object", "allOf": [ { - "$ref": "#/definitions/DataSetMapping" + "$ref": "#/definitions/ProxyDto" } ], "properties": { - "properties": { - "$ref": "#/definitions/SqlDBTableDataSetMappingProperties", - "description": "Sql DB data set mapping properties.", - "x-ms-client-flatten": true + "kind": { + "description": "Kind of synchronization", + "enum": [ + "ScheduleBased" + ], + "type": "string", + "x-ms-enum": { + "name": "kind", + "modelAsString": true + } } }, - "x-ms-discriminator-value": "SqlDBTable" + "discriminator": "kind" }, - "SqlDBTableDataSetMappingProperties": { - "description": "Properties of the SQL DB table data set mapping.", + "SynchronizationSettingList": { + "description": "List response for get Synchronization settings", "required": [ - "databaseName", - "tableName", - "schemaName", - "sqlServerResourceId", - "dataSetId" + "value" ], "type": "object", "properties": { - "databaseName": { - "description": "DatabaseName name of the sink data set", - "type": "string" - }, - "dataSetId": { - "description": "The id of the source data set.", + "nextLink": { + "description": "The Url of next result page.", "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 + "value": { + "description": "Collection of items of type DataTransferObjects.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SynchronizationSetting" } - }, - "provisioningState": { - "description": "Provisioning state of the data set mapping.", + } + } + }, + "Synchronize": { + "description": "Payload for the synchronizing the data.", + "type": "object", + "properties": { + "synchronizationMode": { + "description": "Mode of synchronization used in triggers and snapshot sync. Incremental by default", "enum": [ - "Succeeded", - "Creating", - "Deleting", - "Moving", - "Failed" + "Incremental", + "FullSync" ], "type": "string", - "readOnly": true, "x-ms-enum": { - "name": "provisioningState", + "name": "synchronizationMode", "modelAsString": true } - }, - "schemaName": { - "description": "Schema of the table. Default value is dbo.", - "type": "string" - }, - "sqlServerResourceId": { - "description": "Resource id of SQL server", - "type": "string" - }, - "tableName": { - "description": "SQL DB table name.", - "type": "string" } } }, - "ScheduledSourceSynchronizationSetting": { - "description": "A type of synchronization setting based on schedule", + "Trigger": { + "description": "A Trigger data transfer object.", "required": [ "kind" ], "type": "object", "allOf": [ { - "$ref": "#/definitions/SourceShareSynchronizationSetting" + "$ref": "#/definitions/ProxyDto" } ], "properties": { - "properties": { - "$ref": "#/definitions/ScheduledSourceShareSynchronizationSettingProperties", - "description": "Properties of scheduled synchronization", - "x-ms-client-flatten": true - } - }, - "x-ms-discriminator-value": "ScheduleBased" - }, - "ScheduledSourceShareSynchronizationSettingProperties": { - "description": "A Scheduled source synchronization setting data transfer object.", - "type": "object", - "properties": { - "recurrenceInterval": { - "description": "Recurrence Interval", + "kind": { + "description": "Kind of synchronization", "enum": [ - "Hour", - "Day" + "ScheduleBased" ], "type": "string", "x-ms-enum": { - "name": "recurrenceInterval", + "name": "kind", "modelAsString": true } - }, - "synchronizationTime": { - "format": "date-time", - "description": "Synchronization time", - "type": "string" } - } + }, + "discriminator": "kind" }, - "DefaultDto": { - "description": "Base data transfer object implementation for default resources.", + "TriggerList": { + "description": "List response for get triggers", + "required": [ + "value" + ], "type": "object", "properties": { - "id": { - "description": "The resource id of the azure resource", - "type": "string", - "readOnly": true - }, - "location": { - "description": "Location of the azure resource.", + "nextLink": { + "description": "The Url of next result page.", "type": "string" }, - "name": { - "description": "Name of the azure resource", - "type": "string", - "readOnly": true - }, - "tags": { - "description": "Tags on the azure resource.", - "type": "object", - "additionalProperties": { - "type": "string" + "value": { + "description": "Collection of items of type DataTransferObjects.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/Trigger" } - }, - "type": { - "description": "Type of the azure resource", - "type": "string", - "readOnly": true - } - }, - "x-ms-azure-resource": true - }, - "ProxyDto": { - "description": "Base data transfer object implementation for proxy resources.", - "type": "object", - "properties": { - "id": { - "description": "The resource id of the azure resource", - "type": "string", - "readOnly": true - }, - "name": { - "description": "Name of the azure resource", - "type": "string", - "readOnly": true - }, - "type": { - "description": "Type of the azure resource", - "type": "string", - "readOnly": true } - }, - "x-ms-azure-resource": true + } } }, "parameters": { diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/DataSetMappings_ListByShareSubscription.json b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/DataSetMappings_ListByShareSubscription.json index 4fbda6edc6b8..b2a77abe9a78 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/DataSetMappings_ListByShareSubscription.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/DataSetMappings_ListByShareSubscription.json @@ -4,7 +4,9 @@ "resourceGroupName": "SampleResourceGroup", "accountName": "Account1", "shareSubscriptionName": "ShareSubscription1", - "api-version": "2018-11-01-preview" + "api-version": "2018-11-01-preview", + "filter": "name eq 'DatasetMapping1'", + "orderBy": "name" }, "responses": { "200": { diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/DataSets_ListByShare.json b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/DataSets_ListByShare.json index 377709df3724..ed1395bb7e3f 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/DataSets_ListByShare.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/DataSets_ListByShare.json @@ -4,7 +4,9 @@ "resourceGroupName": "SampleResourceGroup", "accountName": "Account1", "shareName": "Share1", - "api-version": "2018-11-01-preview" + "api-version": "2018-11-01-preview", + "filter": "name eq 'Dataset1'", + "orderBy": "name" }, "responses": { "200": { diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/Invitations_ListByShare.json b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/Invitations_ListByShare.json index ddcc24d8ef51..3ce0678f1b03 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/Invitations_ListByShare.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/Invitations_ListByShare.json @@ -4,7 +4,9 @@ "resourceGroupName": "SampleResourceGroup", "accountName": "Account1", "shareName": "Share1", - "api-version": "2018-11-01-preview" + "api-version": "2018-11-01-preview", + "filter": "properties/targetEmail eq 'johnsmith@microsoft.com'", + "orderBy": "properties/sentAt" }, "responses": { "200": { diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/ShareSubscriptions_ListByAccount.json b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/ShareSubscriptions_ListByAccount.json index dc9c84579419..dcbd9ee25a36 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/ShareSubscriptions_ListByAccount.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/ShareSubscriptions_ListByAccount.json @@ -3,7 +3,9 @@ "subscriptionId": "12345678-1234-1234-12345678abc", "resourceGroupName": "SampleResourceGroup", "accountName": "Account1", - "api-version": "2018-11-01-preview" + "api-version": "2018-11-01-preview", + "filter": "name eq 'ShareSubscription1'", + "orderBy": "properties/createdAt" }, "responses": { "200": { @@ -39,7 +41,7 @@ "properties": { "userName": "John Smith", "userEmail": "john.smith@microsoft.com", - "createdAt": "2019-01-17T22:32:36.8185016Z", + "createdAt": "2020-12-17T22:32:36.8185016Z", "shareSubscriptionStatus": "Active", "invitationId": "4256e2cf-0f82-4865-961b-12f83333f487", "shareName": "share1", diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/ShareSubscriptions_ListSynchronizationDetails.json b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/ShareSubscriptions_ListSynchronizationDetails.json index 78858bc649c3..0a0e50bce98d 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/ShareSubscriptions_ListSynchronizationDetails.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/ShareSubscriptions_ListSynchronizationDetails.json @@ -7,7 +7,9 @@ "shareSubscriptionSynchronization": { "synchronizationId": "7d0536a6-3fa5-43de-b152-3d07c4f6b2bb" }, - "api-version": "2018-11-01-preview" + "api-version": "2018-11-01-preview", + "filter": "name eq 'datasetmapping1'", + "orderBy": "durationMs" }, "responses": { "200": { @@ -25,7 +27,7 @@ "startTime": "2018-11-14T04:47:52.9614956Z", "durationMs": 2000, "status": "Completed", - "name": "dataset1", + "name": "datasetmapping1", "dataSetId": "7d0536a6-3fa5-43de-b152-3d07c4f6b2bb", "dataSetType": "Blob" } diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/ShareSubscriptions_ListSynchronizations.json b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/ShareSubscriptions_ListSynchronizations.json index 4977df1c9813..dde0a4b39c1e 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/ShareSubscriptions_ListSynchronizations.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/ShareSubscriptions_ListSynchronizations.json @@ -4,7 +4,8 @@ "resourceGroupName": "SampleResourceGroup", "accountName": "Account1", "shareSubscriptionName": "ShareSub1", - "api-version": "2018-11-01-preview" + "api-version": "2018-11-01-preview", + "orderBy": "durationMs" }, "responses": { "200": { diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/Shares_ListByAccount.json b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/Shares_ListByAccount.json index 69eb8b0341ee..d5db9970ab1c 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/Shares_ListByAccount.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/Shares_ListByAccount.json @@ -3,7 +3,9 @@ "subscriptionId": "12345678-1234-1234-12345678abc", "resourceGroupName": "SampleResourceGroup", "accountName": "Account1", - "api-version": "2018-11-01-preview" + "api-version": "2018-11-01-preview", + "filter": "name eq 'Share1'", + "orderBy": "properties/createdAt" }, "responses": { "200": { @@ -35,7 +37,7 @@ "terms": "Confidential", "shareKind": "CopyBased", "userName": "John Smith", - "createdAt": "2018-11-14T06:15:15.6818898Z", + "createdAt": "2019-10-14T06:15:15.6818898Z", "userEmail": "johnsmith@microsoft.com" }, "id": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.DataShare/accounts/Account1/shares/Share1", diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/Shares_ListSynchronizationDetails.json b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/Shares_ListSynchronizationDetails.json index fc8da2ed1635..7c5601a1a429 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/Shares_ListSynchronizationDetails.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/Shares_ListSynchronizationDetails.json @@ -7,7 +7,9 @@ "shareSynchronization": { "synchronizationId": "7d0536a6-3fa5-43de-b152-3d07c4f6b2bb" }, - "api-version": "2018-11-01-preview" + "api-version": "2018-11-01-preview", + "filter": "name eq 'dataset1'", + "orderBy": "durationMs" }, "responses": { "200": { diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/Shares_ListSynchronizations.json b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/Shares_ListSynchronizations.json index 2f7f0c095005..692ae24a2a43 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/Shares_ListSynchronizations.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/examples/Shares_ListSynchronizations.json @@ -4,7 +4,8 @@ "resourceGroupName": "SampleResourceGroup", "accountName": "Account1", "shareName": "Share1", - "api-version": "2018-11-01-preview" + "api-version": "2018-11-01-preview", + "filter": "consumerTenantName eq 'nda'" }, "responses": { "200": { diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/DataShare.json b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/DataShare.json index 07c0de6b472b..734c0df12808 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/DataShare.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/DataShare.json @@ -16,6 +16,53 @@ "application/json" ], "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.DataShare/accounts": { + "get": { + "tags": [ + "Account" + ], + "summary": "List Accounts in a subscription", + "description": "List Accounts in Subscription", + "operationId": "Accounts_ListBySubscription", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "$skipToken", + "in": "query", + "description": "Continuation token", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AccountList" + } + }, + "default": { + "description": "An error response received from the Microsoft.DataShare resource provider.", + "schema": { + "$ref": "#/definitions/DataShareError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Accounts_ListBySubscription": { + "$ref": "./examples/Accounts_ListBySubscription.json" + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}": { "get": { "tags": [ @@ -214,53 +261,6 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.DataShare/accounts": { - "get": { - "tags": [ - "Account" - ], - "summary": "List Accounts in a subscription", - "description": "List Accounts in Subscription", - "operationId": "Accounts_ListBySubscription", - "parameters": [ - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/api-version" - }, - { - "name": "$skipToken", - "in": "query", - "description": "Continuation token", - "required": false, - "type": "string" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/AccountList" - } - }, - "default": { - "description": "An error response received from the Microsoft.DataShare resource provider.", - "schema": { - "$ref": "#/definitions/DataShareError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Accounts_ListBySubscription": { - "$ref": "./examples/Accounts_ListBySubscription.json" - } - } - } - }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts": { "get": { "tags": [ @@ -311,40 +311,31 @@ } } }, - "/providers/Microsoft.DataShare/locations/{location}/RejectInvitation": { - "post": { + "/providers/Microsoft.DataShare/ListInvitations": { + "get": { "tags": [ "ConsumerInvitation" ], - "summary": "Rejects the invitation identified by invitationId", - "description": "Reject an invitation", - "operationId": "ConsumerInvitations_RejectInvitation", + "summary": "List the invitations", + "description": "Lists invitations", + "operationId": "ConsumerInvitations_ListInvitations", "parameters": [ { - "name": "location", - "in": "path", - "description": "Location of the invitation", - "required": true, - "type": "string" - }, - { - "name": "invitation", - "in": "body", - "description": "An invitation payload", - "required": true, - "schema": { - "$ref": "#/definitions/ConsumerInvitation" - } + "$ref": "#/parameters/api-version" }, { - "$ref": "#/parameters/api-version" + "name": "$skipToken", + "in": "query", + "description": "The continuation token", + "required": false, + "type": "string" } ], "responses": { "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ConsumerInvitation" + "$ref": "#/definitions/ConsumerInvitationList" } }, "default": { @@ -354,9 +345,12 @@ } } }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { - "ConsumerInvitations_RejectInvitation": { - "$ref": "./examples/ConsumerInvitations_RejectInvitation.json" + "ConsumerInvitations_ListInvitations": { + "$ref": "./examples/ConsumerInvitations_ListInvitations.json" } } } @@ -409,31 +403,40 @@ } } }, - "/providers/Microsoft.DataShare/ListInvitations": { - "get": { + "/providers/Microsoft.DataShare/locations/{location}/RejectInvitation": { + "post": { "tags": [ "ConsumerInvitation" ], - "summary": "List the invitations", - "description": "Lists invitations", - "operationId": "ConsumerInvitations_ListInvitations", + "summary": "Rejects the invitation identified by invitationId", + "description": "Reject an invitation", + "operationId": "ConsumerInvitations_RejectInvitation", "parameters": [ { - "$ref": "#/parameters/api-version" + "name": "location", + "in": "path", + "description": "Location of the invitation", + "required": true, + "type": "string" }, { - "name": "$skipToken", - "in": "query", - "description": "The continuation token", - "required": false, - "type": "string" + "name": "invitation", + "in": "body", + "description": "An invitation payload", + "required": true, + "schema": { + "$ref": "#/definitions/ConsumerInvitation" + } + }, + { + "$ref": "#/parameters/api-version" } ], "responses": { "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ConsumerInvitationList" + "$ref": "#/definitions/ConsumerInvitation" } }, "default": { @@ -443,12 +446,9 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, "x-ms-examples": { - "ConsumerInvitations_ListInvitations": { - "$ref": "./examples/ConsumerInvitations_ListInvitations.json" + "ConsumerInvitations_RejectInvitation": { + "$ref": "./examples/ConsumerInvitations_RejectInvitation.json" } } } @@ -685,6 +685,20 @@ "description": "continuation token", "required": false, "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "Filters the results using OData syntax.", + "required": false, + "type": "string" + }, + { + "name": "$orderby", + "in": "query", + "description": "Sorts the results using OData syntax.", + "required": false, + "type": "string" } ], "responses": { @@ -936,6 +950,20 @@ "description": "Continuation token", "required": false, "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "Filters the results using OData syntax.", + "required": false, + "type": "string" + }, + { + "name": "$orderby", + "in": "query", + "description": "Sorts the results using OData syntax.", + "required": false, + "type": "string" } ], "responses": { @@ -1178,6 +1206,20 @@ "description": "The continuation token", "required": false, "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "Filters the results using OData syntax.", + "required": false, + "type": "string" + }, + { + "name": "$orderby", + "in": "query", + "description": "Sorts the results using OData syntax.", + "required": false, + "type": "string" } ], "responses": { @@ -1241,14 +1283,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}/listSynchronizationDetails": { + "post": { "tags": [ "Share" ], - "summary": "Get a specified share", - "description": "Get a share ", - "operationId": "Shares_Get", + "summary": "List data set level details for a share synchronization", + "description": "List synchronization details", + "operationId": "Shares_ListSynchronizationDetails", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -1262,19 +1304,49 @@ { "name": "shareName", "in": "path", - "description": "The name of the share to retrieve.", + "description": "The name of the share.", "required": true, "type": "string" }, + { + "name": "shareSynchronization", + "in": "body", + "description": "Share Synchronization payload.", + "required": true, + "schema": { + "$ref": "#/definitions/ShareSynchronization" + } + }, { "$ref": "#/parameters/api-version" + }, + { + "name": "$skipToken", + "in": "query", + "description": "Continuation token", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "Filters the results using OData syntax.", + "required": false, + "type": "string" + }, + { + "name": "$orderby", + "in": "query", + "description": "Sorts the results using OData syntax.", + "required": false, + "type": "string" } ], "responses": { "200": { "description": "Success", "schema": { - "$ref": "#/definitions/Share" + "$ref": "#/definitions/SynchronizationDetailsList" } }, "default": { @@ -1284,82 +1356,24 @@ } } }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { - "Shares_Get": { - "$ref": "./examples/Shares_Get.json" + "Shares_ListSynchronizationDetails": { + "$ref": "./examples/Shares_ListSynchronizationDetails.json" } } - }, - "put": { - "tags": [ - "Share" - ], - "summary": "Create a share in the given account.", - "description": "Create a share ", - "operationId": "Shares_Create", - "parameters": [ - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - }, - { - "$ref": "#/parameters/accountName" - }, - { - "name": "shareName", - "in": "path", - "description": "The name of the share.", - "required": true, - "type": "string" - }, - { - "name": "share", - "in": "body", - "description": "The share payload", - "required": true, - "schema": { - "$ref": "#/definitions/Share" - } - }, - { - "$ref": "#/parameters/api-version" - } - ], - "responses": { - "201": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Share" - } - }, - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Share" - } - }, - "default": { - "description": "An error response received from the Microsoft.DataShare resource provider.", - "schema": { - "$ref": "#/definitions/DataShareError" - } - } - }, - "x-ms-examples": { - "Shares_Create": { - "$ref": "./examples/Shares_Create.json" - } - } - }, - "delete": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}/listSynchronizations": { + "post": { "tags": [ "Share" ], - "summary": "Deletes a share", - "description": "Delete a share ", - "operationId": "Shares_Delete", + "summary": "List Synchronizations in a share", + "description": "List synchronizations of a share", + "operationId": "Shares_ListSynchronizations", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -1379,61 +1393,25 @@ }, { "$ref": "#/parameters/api-version" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/OperationResponse" - } - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "Success" - }, - "default": { - "description": "An error response received from the Microsoft.DataShare resource provider.", - "schema": { - "$ref": "#/definitions/DataShareError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Shares_Delete": { - "$ref": "./examples/Shares_Delete.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares": { - "get": { - "tags": [ - "Share" - ], - "summary": "List of available shares under an account.", - "description": "List shares in an account", - "operationId": "Shares_ListByAccount", - "parameters": [ - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" }, { - "$ref": "#/parameters/accountName" + "name": "$skipToken", + "in": "query", + "description": "Continuation token", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/api-version" + "name": "$filter", + "in": "query", + "description": "Filters the results using OData syntax.", + "required": false, + "type": "string" }, { - "name": "$skipToken", + "name": "$orderby", "in": "query", - "description": "Continuation Token", + "description": "Sorts the results using OData syntax.", "required": false, "type": "string" } @@ -1442,7 +1420,7 @@ "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ShareList" + "$ref": "#/definitions/ShareSynchronizationList" } }, "default": { @@ -1456,20 +1434,20 @@ "nextLinkName": "nextLink" }, "x-ms-examples": { - "Shares_ListByAccount": { - "$ref": "./examples/Shares_ListByAccount.json" + "Shares_ListSynchronizations": { + "$ref": "./examples/Shares_ListSynchronizations.json" } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}/listSynchronizations": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}/providerShareSubscriptions/{providerShareSubscriptionId}/reinstate": { "post": { "tags": [ "Share" ], - "summary": "List Synchronizations in a share", - "description": "List synchronizations of a share", - "operationId": "Shares_ListSynchronizations", + "summary": "Reinstate share subscription in a provider share.", + "description": "Reinstate share subscription in a provider share", + "operationId": "ProviderShareSubscriptions_Reinstate", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -1488,21 +1466,21 @@ "type": "string" }, { - "$ref": "#/parameters/api-version" + "name": "providerShareSubscriptionId", + "in": "path", + "description": "To locate shareSubscription", + "required": true, + "type": "string" }, { - "name": "$skipToken", - "in": "query", - "description": "Continuation token", - "required": false, - "type": "string" + "$ref": "#/parameters/api-version" } ], "responses": { "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ShareSynchronizationList" + "$ref": "#/definitions/ProviderShareSubscription" } }, "default": { @@ -1512,24 +1490,21 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, "x-ms-examples": { - "Shares_ListSynchronizations": { - "$ref": "./examples/Shares_ListSynchronizations.json" + "ProviderShareSubscriptions_Reinstate": { + "$ref": "./examples/ProviderShareSubscriptions_Reinstate.json" } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}/listSynchronizationDetails": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}/providerShareSubscriptions/{providerShareSubscriptionId}/revoke": { "post": { "tags": [ "Share" ], - "summary": "List data set level details for a share synchronization", - "description": "List synchronization details", - "operationId": "Shares_ListSynchronizationDetails", + "summary": "Revoke share subscription in a provider share.", + "description": "Revoke share subscription in a provider share", + "operationId": "ProviderShareSubscriptions_Revoke", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -1548,30 +1523,27 @@ "type": "string" }, { - "name": "shareSynchronization", - "in": "body", - "description": "Share Synchronization payload.", + "name": "providerShareSubscriptionId", + "in": "path", + "description": "To locate shareSubscription", "required": true, - "schema": { - "$ref": "#/definitions/ShareSynchronization" - } + "type": "string" }, { "$ref": "#/parameters/api-version" - }, - { - "name": "$skipToken", - "in": "query", - "description": "Continuation token", - "required": false, - "type": "string" } ], "responses": { "200": { "description": "Success", "schema": { - "$ref": "#/definitions/SynchronizationDetailsList" + "$ref": "#/definitions/ProviderShareSubscription" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/ProviderShareSubscription" } }, "default": { @@ -1581,12 +1553,13 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" }, "x-ms-examples": { - "Shares_ListSynchronizationDetails": { - "$ref": "./examples/Shares_ListSynchronizationDetails.json" + "ProviderShareSubscriptions_Revoke": { + "$ref": "./examples/ProviderShareSubscriptions_Revoke.json" } } } @@ -1708,14 +1681,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}/providerShareSubscriptions/{providerShareSubscriptionId}/revoke": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}": { + "get": { "tags": [ "Share" ], - "summary": "Revoke share subscription in a provider share.", - "description": "Revoke share subscription in a provider share", - "operationId": "ProviderShareSubscriptions_Revoke", + "summary": "Get a specified share", + "description": "Get a share ", + "operationId": "Shares_Get", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -1729,14 +1702,7 @@ { "name": "shareName", "in": "path", - "description": "The name of the share.", - "required": true, - "type": "string" - }, - { - "name": "providerShareSubscriptionId", - "in": "path", - "description": "To locate shareSubscription", + "description": "The name of the share to retrieve.", "required": true, "type": "string" }, @@ -1748,13 +1714,7 @@ "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ProviderShareSubscription" - } - }, - "202": { - "description": "Accepted", - "schema": { - "$ref": "#/definitions/ProviderShareSubscription" + "$ref": "#/definitions/Share" } }, "default": { @@ -1764,25 +1724,19 @@ } } }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" - }, "x-ms-examples": { - "ProviderShareSubscriptions_Revoke": { - "$ref": "./examples/ProviderShareSubscriptions_Revoke.json" + "Shares_Get": { + "$ref": "./examples/Shares_Get.json" } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares/{shareName}/providerShareSubscriptions/{providerShareSubscriptionId}/reinstate": { - "post": { + }, + "put": { "tags": [ "Share" ], - "summary": "Reinstate share subscription in a provider share.", - "description": "Reinstate share subscription in a provider share", - "operationId": "ProviderShareSubscriptions_Reinstate", + "summary": "Create a share in the given account.", + "description": "Create a share ", + "operationId": "Shares_Create", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -1801,21 +1755,29 @@ "type": "string" }, { - "name": "providerShareSubscriptionId", - "in": "path", - "description": "To locate shareSubscription", + "name": "share", + "in": "body", + "description": "The share payload", "required": true, - "type": "string" + "schema": { + "$ref": "#/definitions/Share" + } }, { "$ref": "#/parameters/api-version" } ], "responses": { + "201": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Share" + } + }, "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ProviderShareSubscription" + "$ref": "#/definitions/Share" } }, "default": { @@ -1826,20 +1788,18 @@ } }, "x-ms-examples": { - "ProviderShareSubscriptions_Reinstate": { - "$ref": "./examples/ProviderShareSubscriptions_Reinstate.json" + "Shares_Create": { + "$ref": "./examples/Shares_Create.json" } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions/{shareSubscriptionName}": { - "get": { + }, + "delete": { "tags": [ - "ShareSubscription" + "Share" ], - "summary": "Get shareSubscription in an account.", - "description": "Get a shareSubscription in an account", - "operationId": "ShareSubscriptions_Get", + "summary": "Deletes a share", + "description": "Delete a share ", + "operationId": "Shares_Delete", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -1851,9 +1811,9 @@ "$ref": "#/parameters/accountName" }, { - "name": "shareSubscriptionName", + "name": "shareName", "in": "path", - "description": "The name of the shareSubscription.", + "description": "The name of the share.", "required": true, "type": "string" }, @@ -1865,9 +1825,15 @@ "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ShareSubscription" + "$ref": "#/definitions/OperationResponse" } }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "Success" + }, "default": { "description": "An error response received from the Microsoft.DataShare resource provider.", "schema": { @@ -1875,19 +1841,22 @@ } } }, + "x-ms-long-running-operation": true, "x-ms-examples": { - "ShareSubscriptions_Get": { - "$ref": "./examples/ShareSubscriptions_Get.json" + "Shares_Delete": { + "$ref": "./examples/Shares_Delete.json" } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shares": { + "get": { "tags": [ - "ShareSubscription" + "Share" ], - "summary": "Create shareSubscription in an account.", - "description": "Create a shareSubscription in an account", - "operationId": "ShareSubscriptions_Create", + "summary": "List of available shares under an account.", + "description": "List shares in an account", + "operationId": "Shares_ListByAccount", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -1899,36 +1868,35 @@ "$ref": "#/parameters/accountName" }, { - "name": "shareSubscriptionName", - "in": "path", - "description": "The name of the shareSubscription.", - "required": true, + "$ref": "#/parameters/api-version" + }, + { + "name": "$skipToken", + "in": "query", + "description": "Continuation Token", + "required": false, "type": "string" }, { - "name": "shareSubscription", - "in": "body", - "description": "create parameters for shareSubscription", - "required": true, - "schema": { - "$ref": "#/definitions/ShareSubscription" - } + "name": "$filter", + "in": "query", + "description": "Filters the results using OData syntax.", + "required": false, + "type": "string" }, { - "$ref": "#/parameters/api-version" + "name": "$orderby", + "in": "query", + "description": "Sorts the results using OData syntax.", + "required": false, + "type": "string" } ], "responses": { "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ShareSubscription" - } - }, - "201": { - "description": "Success", - "schema": { - "$ref": "#/definitions/ShareSubscription" + "$ref": "#/definitions/ShareList" } }, "default": { @@ -1938,19 +1906,24 @@ } } }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { - "ShareSubscriptions_Create": { - "$ref": "./examples/ShareSubscriptions_Create.json" + "Shares_ListByAccount": { + "$ref": "./examples/Shares_ListByAccount.json" } } - }, - "delete": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions/{shareSubscriptionName}/cancelSynchronization": { + "post": { "tags": [ "ShareSubscription" ], - "summary": "Delete shareSubscription in an account.", - "description": "Delete a shareSubscription in an account", - "operationId": "ShareSubscriptions_Delete", + "summary": "Request cancellation of a data share snapshot", + "description": "Request to cancel a synchronization.", + "operationId": "ShareSubscriptions_CancelSynchronization", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -1969,71 +1942,29 @@ "type": "string" }, { - "$ref": "#/parameters/api-version" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/OperationResponse" - } - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "Success" - }, - "default": { - "description": "An error response received from the Microsoft.DataShare resource provider.", + "name": "shareSubscriptionSynchronization", + "in": "body", + "description": "Share Subscription Synchronization payload.", + "required": true, "schema": { - "$ref": "#/definitions/DataShareError" + "$ref": "#/definitions/ShareSubscriptionSynchronization" } - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "ShareSubscriptions_Delete": { - "$ref": "./examples/ShareSubscriptions_Delete.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions": { - "get": { - "tags": [ - "ShareSubscription" - ], - "summary": "List of available share subscriptions under an account.", - "description": "List share subscriptions in an account", - "operationId": "ShareSubscriptions_ListByAccount", - "parameters": [ - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - }, - { - "$ref": "#/parameters/accountName" }, { "$ref": "#/parameters/api-version" - }, - { - "name": "$skipToken", - "in": "query", - "description": "Continuation Token", - "required": false, - "type": "string" } ], "responses": { "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ShareSubscriptionList" + "$ref": "#/definitions/ShareSubscriptionSynchronization" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/ShareSubscriptionSynchronization" } }, "default": { @@ -2043,12 +1974,13 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" }, "x-ms-examples": { - "ShareSubscriptions_ListByAccount": { - "$ref": "./examples/ShareSubscriptions_ListByAccount.json" + "ShareSubscriptions_CancelSynchronization": { + "$ref": "./examples/ShareSubscriptions_CancelSynchronization.json" } } } @@ -2173,14 +2105,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions/{shareSubscriptionName}/listSynchronizations": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions/{shareSubscriptionName}/listSynchronizationDetails": { "post": { "tags": [ "ShareSubscription" ], - "summary": "List Synchronizations in a share subscription.", - "description": "List synchronizations of a share subscription", - "operationId": "ShareSubscriptions_ListSynchronizations", + "summary": "List data set level details for a share subscription synchronization", + "description": "List synchronization details", + "operationId": "ShareSubscriptions_ListSynchronizationDetails", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -2198,6 +2130,15 @@ "required": true, "type": "string" }, + { + "name": "shareSubscriptionSynchronization", + "in": "body", + "description": "Share Subscription Synchronization payload.", + "required": true, + "schema": { + "$ref": "#/definitions/ShareSubscriptionSynchronization" + } + }, { "$ref": "#/parameters/api-version" }, @@ -2207,13 +2148,27 @@ "description": "Continuation token", "required": false, "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "Filters the results using OData syntax.", + "required": false, + "type": "string" + }, + { + "name": "$orderby", + "in": "query", + "description": "Sorts the results using OData syntax.", + "required": false, + "type": "string" } ], "responses": { "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ShareSubscriptionSynchronizationList" + "$ref": "#/definitions/SynchronizationDetailsList" } }, "default": { @@ -2227,20 +2182,20 @@ "nextLinkName": "nextLink" }, "x-ms-examples": { - "ShareSubscriptions_ListSynchronizations": { - "$ref": "./examples/ShareSubscriptions_ListSynchronizations.json" + "ShareSubscriptions_ListSynchronizationDetails": { + "$ref": "./examples/ShareSubscriptions_ListSynchronizationDetails.json" } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions/{shareSubscriptionName}/listSynchronizationDetails": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions/{shareSubscriptionName}/listSynchronizations": { "post": { "tags": [ "ShareSubscription" ], - "summary": "List data set level details for a share subscription synchronization", - "description": "List synchronization details", - "operationId": "ShareSubscriptions_ListSynchronizationDetails", + "summary": "List Synchronizations in a share subscription.", + "description": "List synchronizations of a share subscription", + "operationId": "ShareSubscriptions_ListSynchronizations", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -2258,15 +2213,6 @@ "required": true, "type": "string" }, - { - "name": "shareSubscriptionSynchronization", - "in": "body", - "description": "Share Subscription Synchronization payload.", - "required": true, - "schema": { - "$ref": "#/definitions/ShareSubscriptionSynchronization" - } - }, { "$ref": "#/parameters/api-version" }, @@ -2276,13 +2222,27 @@ "description": "Continuation token", "required": false, "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "Filters the results using OData syntax.", + "required": false, + "type": "string" + }, + { + "name": "$orderby", + "in": "query", + "description": "Sorts the results using OData syntax.", + "required": false, + "type": "string" } ], "responses": { "200": { "description": "Success", "schema": { - "$ref": "#/definitions/SynchronizationDetailsList" + "$ref": "#/definitions/ShareSubscriptionSynchronizationList" } }, "default": { @@ -2296,8 +2256,8 @@ "nextLinkName": "nextLink" }, "x-ms-examples": { - "ShareSubscriptions_ListSynchronizationDetails": { - "$ref": "./examples/ShareSubscriptions_ListSynchronizationDetails.json" + "ShareSubscriptions_ListSynchronizations": { + "$ref": "./examples/ShareSubscriptions_ListSynchronizations.json" } } } @@ -2371,14 +2331,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions/{shareSubscriptionName}/cancelSynchronization": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions/{shareSubscriptionName}": { + "get": { "tags": [ "ShareSubscription" ], - "summary": "Request cancellation of a data share snapshot", - "description": "Request to cancel a synchronization.", - "operationId": "ShareSubscriptions_CancelSynchronization", + "summary": "Get shareSubscription in an account.", + "description": "Get a shareSubscription in an account", + "operationId": "ShareSubscriptions_Get", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -2397,12 +2357,60 @@ "type": "string" }, { - "name": "shareSubscriptionSynchronization", + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ShareSubscription" + } + }, + "default": { + "description": "An error response received from the Microsoft.DataShare resource provider.", + "schema": { + "$ref": "#/definitions/DataShareError" + } + } + }, + "x-ms-examples": { + "ShareSubscriptions_Get": { + "$ref": "./examples/ShareSubscriptions_Get.json" + } + } + }, + "put": { + "tags": [ + "ShareSubscription" + ], + "summary": "Create shareSubscription in an account.", + "description": "Create a shareSubscription in an account", + "operationId": "ShareSubscriptions_Create", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/accountName" + }, + { + "name": "shareSubscriptionName", + "in": "path", + "description": "The name of the shareSubscription.", + "required": true, + "type": "string" + }, + { + "name": "shareSubscription", "in": "body", - "description": "Share Subscription Synchronization payload.", + "description": "create parameters for shareSubscription", "required": true, "schema": { - "$ref": "#/definitions/ShareSubscriptionSynchronization" + "$ref": "#/definitions/ShareSubscription" } }, { @@ -2413,15 +2421,69 @@ "200": { "description": "Success", "schema": { - "$ref": "#/definitions/ShareSubscriptionSynchronization" + "$ref": "#/definitions/ShareSubscription" } }, - "202": { - "description": "Accepted", + "201": { + "description": "Success", "schema": { - "$ref": "#/definitions/ShareSubscriptionSynchronization" + "$ref": "#/definitions/ShareSubscription" + } + }, + "default": { + "description": "An error response received from the Microsoft.DataShare resource provider.", + "schema": { + "$ref": "#/definitions/DataShareError" + } + } + }, + "x-ms-examples": { + "ShareSubscriptions_Create": { + "$ref": "./examples/ShareSubscriptions_Create.json" + } + } + }, + "delete": { + "tags": [ + "ShareSubscription" + ], + "summary": "Delete shareSubscription in an account.", + "description": "Delete a shareSubscription in an account", + "operationId": "ShareSubscriptions_Delete", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/accountName" + }, + { + "name": "shareSubscriptionName", + "in": "path", + "description": "The name of the shareSubscription.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/OperationResponse" } }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "Success" + }, "default": { "description": "An error response received from the Microsoft.DataShare resource provider.", "schema": { @@ -2430,12 +2492,76 @@ } }, "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" + "x-ms-examples": { + "ShareSubscriptions_Delete": { + "$ref": "./examples/ShareSubscriptions_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataShare/accounts/{accountName}/shareSubscriptions": { + "get": { + "tags": [ + "ShareSubscription" + ], + "summary": "List of available share subscriptions under an account.", + "description": "List share subscriptions in an account", + "operationId": "ShareSubscriptions_ListByAccount", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/accountName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "$skipToken", + "in": "query", + "description": "Continuation Token", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "Filters the results using OData syntax.", + "required": false, + "type": "string" + }, + { + "name": "$orderby", + "in": "query", + "description": "Sorts the results using OData syntax.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ShareSubscriptionList" + } + }, + "default": { + "description": "An error response received from the Microsoft.DataShare resource provider.", + "schema": { + "$ref": "#/definitions/DataShareError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" }, "x-ms-examples": { - "ShareSubscriptions_CancelSynchronization": { - "$ref": "./examples/ShareSubscriptions_CancelSynchronization.json" + "ShareSubscriptions_ListByAccount": { + "$ref": "./examples/ShareSubscriptions_ListByAccount.json" } } } @@ -2941,6 +3067,27 @@ } }, "definitions": { + "AccountList": { + "description": "List response for get Accounts.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "nextLink": { + "description": "The Url of next result page.", + "type": "string" + }, + "value": { + "description": "Collection of items of type DataTransferObjects.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/Account" + } + } + } + }, "Account": { "description": "An account data transfer object.", "required": [ @@ -3072,19 +3219,6 @@ } } }, - "AccountUpdateParameters": { - "description": "Update parameters for accounts", - "type": "object", - "properties": { - "tags": { - "description": "Tags on the azure resource.", - "type": "object", - "additionalProperties": { - "type": "string" - } - } - } - }, "OperationResponse": { "description": "Response for long running operation", "required": [ @@ -3124,8 +3258,21 @@ } } }, - "AccountList": { - "description": "List response for get Accounts.", + "AccountUpdateParameters": { + "description": "Update parameters for accounts", + "type": "object", + "properties": { + "tags": { + "description": "Tags on the azure resource.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ConsumerInvitationList": { + "description": "List response for get InvitationList", "required": [ "value" ], @@ -3140,7 +3287,7 @@ "uniqueItems": false, "type": "array", "items": { - "$ref": "#/definitions/Account" + "$ref": "#/definitions/ConsumerInvitation" } } } @@ -3255,38 +3402,17 @@ } } }, - "ConsumerInvitationList": { - "description": "List response for get InvitationList", + "DataSet": { + "description": "A DataSet data transfer object.", "required": [ - "value" + "kind" ], "type": "object", - "properties": { - "nextLink": { - "description": "The Url of next result page.", - "type": "string" - }, - "value": { - "description": "Collection of items of type DataTransferObjects.", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/ConsumerInvitation" - } - } - } - }, - "DataSet": { - "description": "A DataSet data transfer object.", - "required": [ - "kind" - ], - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/ProxyDto" - } - ], + "allOf": [ + { + "$ref": "#/definitions/ProxyDto" + } + ], "properties": { "kind": { "description": "Kind of data set.", @@ -3679,122 +3805,6 @@ } } }, - "Share": { - "description": "A share data transfer object.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/ProxyDto" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/ShareProperties", - "description": "Properties on the share", - "x-ms-client-flatten": true - } - } - }, - "ShareProperties": { - "description": "Share property bag.", - "type": "object", - "properties": { - "createdAt": { - "format": "date-time", - "description": "Time at which the share was created.", - "type": "string", - "readOnly": true - }, - "description": { - "description": "Share description.", - "type": "string" - }, - "provisioningState": { - "description": "Gets or sets the provisioning state", - "enum": [ - "Succeeded", - "Creating", - "Deleting", - "Moving", - "Failed" - ], - "type": "string", - "readOnly": true, - "x-ms-enum": { - "name": "provisioningState", - "modelAsString": true - } - }, - "shareKind": { - "description": "Share kind.", - "enum": [ - "CopyBased", - "InPlace" - ], - "type": "string", - "x-ms-enum": { - "name": "shareKind", - "modelAsString": true - } - }, - "terms": { - "description": "Share terms.", - "type": "string" - }, - "userEmail": { - "description": "Email of the user who created the resource", - "type": "string", - "readOnly": true - }, - "userName": { - "description": "Name of the user who created the resource", - "type": "string", - "readOnly": true - } - } - }, - "ShareList": { - "description": "List response for get Shares.", - "required": [ - "value" - ], - "type": "object", - "properties": { - "nextLink": { - "description": "The Url of next result page.", - "type": "string" - }, - "value": { - "description": "Collection of items of type DataTransferObjects.", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/Share" - } - } - } - }, - "ShareSynchronizationList": { - "description": "List response for get ShareSynchronization.", - "required": [ - "value" - ], - "type": "object", - "properties": { - "nextLink": { - "description": "The Url of next result page.", - "type": "string" - }, - "value": { - "description": "Collection of items of type DataTransferObjects.", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/ShareSynchronization" - } - } - } - }, "ShareSynchronization": { "description": "A ShareSynchronization data transfer object.", "type": "object", @@ -3983,6 +3993,27 @@ } } }, + "ShareSynchronizationList": { + "description": "List response for get ShareSynchronization.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "nextLink": { + "description": "The Url of next result page.", + "type": "string" + }, + "value": { + "description": "Collection of items of type DataTransferObjects.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ShareSynchronization" + } + } + } + }, "ProviderShareSubscription": { "description": "A provider side share subscription data transfer object.", "type": "object", @@ -4083,11 +4114,8 @@ } } }, - "ShareSubscription": { - "description": "A share subscription data transfer object.", - "required": [ - "properties" - ], + "Share": { + "description": "A share data transfer object.", "type": "object", "allOf": [ { @@ -4096,47 +4124,28 @@ ], "properties": { "properties": { - "$ref": "#/definitions/ShareSubscriptionProperties", - "description": "Properties on the share subscription", + "$ref": "#/definitions/ShareProperties", + "description": "Properties on the share", "x-ms-client-flatten": true } } }, - "ShareSubscriptionProperties": { - "description": "Share subscription property bag.", - "required": [ - "invitationId", - "sourceShareLocation" - ], + "ShareProperties": { + "description": "Share property bag.", "type": "object", "properties": { "createdAt": { "format": "date-time", - "description": "Time at which the share subscription was created.", + "description": "Time at which the share was created.", "type": "string", "readOnly": true }, - "invitationId": { - "description": "The invitation id.", + "description": { + "description": "Share description.", "type": "string" }, - "providerEmail": { - "description": "Email of the provider who created the resource", - "type": "string", - "readOnly": true - }, - "providerName": { - "description": "Name of the provider who created the resource", - "type": "string", - "readOnly": true - }, - "providerTenantName": { - "description": "Tenant name of the provider who created the resource", - "type": "string", - "readOnly": true - }, "provisioningState": { - "description": "Provisioning state of the share subscription", + "description": "Gets or sets the provisioning state", "enum": [ "Succeeded", "Creating", @@ -4151,51 +4160,20 @@ "modelAsString": true } }, - "shareDescription": { - "description": "Description of share", - "type": "string", - "readOnly": true - }, "shareKind": { - "description": "Kind of share", + "description": "Share kind.", "enum": [ "CopyBased", "InPlace" ], "type": "string", - "readOnly": true, "x-ms-enum": { "name": "shareKind", "modelAsString": true } }, - "shareName": { - "description": "Name of the share", - "type": "string", - "readOnly": true - }, - "shareSubscriptionStatus": { - "description": "Gets the current status of share subscription.", - "enum": [ - "Active", - "Revoked", - "SourceDeleted", - "Revoking" - ], - "type": "string", - "readOnly": true, - "x-ms-enum": { - "name": "shareSubscriptionStatus", - "modelAsString": true - } - }, - "shareTerms": { - "description": "Terms of a share", - "type": "string", - "readOnly": true - }, - "sourceShareLocation": { - "description": "Source share location.", + "terms": { + "description": "Share terms.", "type": "string" }, "userEmail": { @@ -4210,8 +4188,8 @@ } } }, - "ShareSubscriptionList": { - "description": "List response for get ShareSubscription.", + "ShareList": { + "description": "List response for get Shares.", "required": [ "value" ], @@ -4226,7 +4204,61 @@ "uniqueItems": false, "type": "array", "items": { - "$ref": "#/definitions/ShareSubscription" + "$ref": "#/definitions/Share" + } + } + } + }, + "ShareSubscriptionSynchronization": { + "description": "A ShareSubscriptionSynchronization data transfer object.", + "required": [ + "synchronizationId" + ], + "type": "object", + "properties": { + "durationMs": { + "format": "int32", + "description": "Synchronization duration", + "type": "integer", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "End time of synchronization", + "type": "string", + "readOnly": true + }, + "message": { + "description": "message of Synchronization", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "start time of synchronization", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Raw Status", + "type": "string", + "readOnly": true + }, + "synchronizationId": { + "description": "Synchronization id", + "type": "string" + }, + "synchronizationMode": { + "description": "Synchronization Mode", + "enum": [ + "Incremental", + "FullSync" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "synchronizationMode", + "modelAsString": true } } } @@ -4380,74 +4412,168 @@ } } }, - "ShareSubscriptionSynchronization": { - "description": "A ShareSubscriptionSynchronization data transfer object.", + "Synchronize": { + "description": "Payload for the synchronizing the data.", + "type": "object", + "properties": { + "synchronizationMode": { + "description": "Mode of synchronization used in triggers and snapshot sync. Incremental by default", + "enum": [ + "Incremental", + "FullSync" + ], + "type": "string", + "x-ms-enum": { + "name": "synchronizationMode", + "modelAsString": true + } + } + } + }, + "ShareSubscription": { + "description": "A share subscription data transfer object.", "required": [ - "synchronizationId" + "properties" ], "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyDto" + } + ], "properties": { - "durationMs": { - "format": "int32", - "description": "Synchronization duration", - "type": "integer", + "properties": { + "$ref": "#/definitions/ShareSubscriptionProperties", + "description": "Properties on the share subscription", + "x-ms-client-flatten": true + } + } + }, + "ShareSubscriptionProperties": { + "description": "Share subscription property bag.", + "required": [ + "invitationId", + "sourceShareLocation" + ], + "type": "object", + "properties": { + "createdAt": { + "format": "date-time", + "description": "Time at which the share subscription was created.", + "type": "string", "readOnly": true }, - "endTime": { - "format": "date-time", - "description": "End time of synchronization", + "invitationId": { + "description": "The invitation id.", + "type": "string" + }, + "providerEmail": { + "description": "Email of the provider who created the resource", "type": "string", "readOnly": true }, - "message": { - "description": "message of Synchronization", + "providerName": { + "description": "Name of the provider who created the resource", "type": "string", "readOnly": true }, - "startTime": { - "format": "date-time", - "description": "start time of synchronization", + "providerTenantName": { + "description": "Tenant name of the provider who created the resource", "type": "string", "readOnly": true }, - "status": { - "description": "Raw Status", + "provisioningState": { + "description": "Provisioning state of the share subscription", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Moving", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + }, + "shareDescription": { + "description": "Description of share", "type": "string", "readOnly": true }, - "synchronizationId": { - "description": "Synchronization id", - "type": "string" + "shareKind": { + "description": "Kind of share", + "enum": [ + "CopyBased", + "InPlace" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "shareKind", + "modelAsString": true + } }, - "synchronizationMode": { - "description": "Synchronization Mode", + "shareName": { + "description": "Name of the share", + "type": "string", + "readOnly": true + }, + "shareSubscriptionStatus": { + "description": "Gets the current status of share subscription.", "enum": [ - "Incremental", - "FullSync" + "Active", + "Revoked", + "SourceDeleted", + "Revoking" ], "type": "string", "readOnly": true, "x-ms-enum": { - "name": "synchronizationMode", + "name": "shareSubscriptionStatus", "modelAsString": true } + }, + "shareTerms": { + "description": "Terms of a share", + "type": "string", + "readOnly": true + }, + "sourceShareLocation": { + "description": "Source share location.", + "type": "string" + }, + "userEmail": { + "description": "Email of the user who created the resource", + "type": "string", + "readOnly": true + }, + "userName": { + "description": "Name of the user who created the resource", + "type": "string", + "readOnly": true } } }, - "Synchronize": { - "description": "Payload for the synchronizing the data.", + "ShareSubscriptionList": { + "description": "List response for get ShareSubscription.", + "required": [ + "value" + ], "type": "object", "properties": { - "synchronizationMode": { - "description": "Mode of synchronization used in triggers and snapshot sync. Incremental by default", - "enum": [ - "Incremental", - "FullSync" - ], - "type": "string", - "x-ms-enum": { - "name": "synchronizationMode", - "modelAsString": true + "nextLink": { + "description": "The Url of next result page.", + "type": "string" + }, + "value": { + "description": "Collection of items of type DataTransferObjects.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ShareSubscription" } } } diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/DataSetMappings_ListByShareSubscription.json b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/DataSetMappings_ListByShareSubscription.json index 766f8839e019..28aca6471ed5 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/DataSetMappings_ListByShareSubscription.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/DataSetMappings_ListByShareSubscription.json @@ -4,7 +4,9 @@ "resourceGroupName": "SampleResourceGroup", "accountName": "Account1", "shareSubscriptionName": "ShareSubscription1", - "api-version": "2019-11-01" + "api-version": "2019-11-01", + "filter": "name eq 'DatasetMapping1'", + "orderBy": "name" }, "responses": { "200": { diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/DataSets_Delete.json b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/DataSets_Delete.json index 641ad9cf412d..eb9de395544c 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/DataSets_Delete.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/DataSets_Delete.json @@ -5,7 +5,7 @@ "accountName": "Account1", "shareName": "Share1", "dataSetName": "Dataset1", - "api-version": "2018-11-01-preview" + "api-version": "2019-11-01" }, "responses": { "200": { diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/DataSets_ListByShare.json b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/DataSets_ListByShare.json index 36c4e851679d..a0052319a8cf 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/DataSets_ListByShare.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/DataSets_ListByShare.json @@ -4,7 +4,9 @@ "resourceGroupName": "SampleResourceGroup", "accountName": "Account1", "shareName": "Share1", - "api-version": "2019-11-01" + "api-version": "2019-11-01", + "filter": "name eq 'Dataset1'", + "orderBy": "name" }, "responses": { "200": { diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/Invitations_ListByShare.json b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/Invitations_ListByShare.json index 70614c24e56c..95763c961d21 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/Invitations_ListByShare.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/Invitations_ListByShare.json @@ -4,7 +4,9 @@ "resourceGroupName": "SampleResourceGroup", "accountName": "Account1", "shareName": "Share1", - "api-version": "2019-11-01" + "api-version": "2019-11-01", + "filter": "properties/targetEmail eq 'johnsmith@microsoft.com'", + "orderBy": "properties/sentAt" }, "responses": { "200": { diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/ShareSubscriptions_ListByAccount.json b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/ShareSubscriptions_ListByAccount.json index 07bb2915ddbb..7da7cb2609d4 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/ShareSubscriptions_ListByAccount.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/ShareSubscriptions_ListByAccount.json @@ -3,7 +3,9 @@ "subscriptionId": "12345678-1234-1234-12345678abc", "resourceGroupName": "SampleResourceGroup", "accountName": "Account1", - "api-version": "2019-11-01" + "api-version": "2019-11-01", + "filter": "name eq 'ShareSubscription1'", + "orderBy": "properties/createdAt" }, "responses": { "200": { @@ -40,7 +42,7 @@ "properties": { "userName": "John Smith", "userEmail": "john.smith@microsoft.com", - "createdAt": "2019-01-17T22:32:36.8185016Z", + "createdAt": "2020-12-17T22:32:36.8185016Z", "shareSubscriptionStatus": "Active", "invitationId": "4256e2cf-0f82-4865-961b-12f83333f487", "sourceShareLocation": "eastus2", diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/ShareSubscriptions_ListSynchronizationDetails.json b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/ShareSubscriptions_ListSynchronizationDetails.json index efc6af9f2b8f..f36e62ee1d83 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/ShareSubscriptions_ListSynchronizationDetails.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/ShareSubscriptions_ListSynchronizationDetails.json @@ -7,7 +7,9 @@ "shareSubscriptionSynchronization": { "synchronizationId": "7d0536a6-3fa5-43de-b152-3d07c4f6b2bb" }, - "api-version": "2019-11-01" + "api-version": "2019-11-01", + "filter": "name eq 'datasetmapping1'", + "orderBy": "durationMs" }, "responses": { "200": { @@ -25,7 +27,7 @@ "startTime": "2018-11-14T04:47:52.9614956Z", "durationMs": 2000, "status": "Completed", - "name": "dataset1", + "name": "datasetmapping1", "dataSetId": "7d0536a6-3fa5-43de-b152-3d07c4f6b2bb", "dataSetType": "Blob" } diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/ShareSubscriptions_ListSynchronizations.json b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/ShareSubscriptions_ListSynchronizations.json index 362b27eacc89..616d3a6bea85 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/ShareSubscriptions_ListSynchronizations.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/ShareSubscriptions_ListSynchronizations.json @@ -4,7 +4,8 @@ "resourceGroupName": "SampleResourceGroup", "accountName": "Account1", "shareSubscriptionName": "ShareSub1", - "api-version": "2019-11-01" + "api-version": "2019-11-01", + "orderBy": "durationMs" }, "responses": { "200": { diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/Shares_ListByAccount.json b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/Shares_ListByAccount.json index 531af3d38a42..4aef3c8dc324 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/Shares_ListByAccount.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/Shares_ListByAccount.json @@ -3,7 +3,9 @@ "subscriptionId": "12345678-1234-1234-12345678abc", "resourceGroupName": "SampleResourceGroup", "accountName": "Account1", - "api-version": "2019-11-01" + "api-version": "2019-11-01", + "filter": "name eq 'Share1'", + "orderBy": "properties/createdAt" }, "responses": { "200": { @@ -35,7 +37,7 @@ "terms": "Confidential", "shareKind": "CopyBased", "userName": "John Smith", - "createdAt": "2018-11-14T06:15:15.6818898Z", + "createdAt": "2019-10-14T06:15:15.6818898Z", "userEmail": "johnsmith@microsoft.com" }, "id": "/subscriptions/433a8dfd-e5d5-4e77-ad86-90acdc75eb1a/resourceGroups/SampleResourceGroup/providers/Microsoft.DataShare/accounts/Account1/shares/Share1", diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/Shares_ListSynchronizationDetails.json b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/Shares_ListSynchronizationDetails.json index 0d5883c6bea3..b320c7278776 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/Shares_ListSynchronizationDetails.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/Shares_ListSynchronizationDetails.json @@ -7,7 +7,9 @@ "shareSynchronization": { "synchronizationId": "7d0536a6-3fa5-43de-b152-3d07c4f6b2bb" }, - "api-version": "2019-11-01" + "api-version": "2019-11-01", + "filter": "name eq 'dataset1'", + "orderBy": "durationMs" }, "responses": { "200": { @@ -28,6 +30,15 @@ "name": "dataset1", "dataSetId": "7d0536a6-3fa5-43de-b152-3d07c4f6b2bb", "dataSetType": "Blob" + }, + { + "endTime": "2019-10-14T04:47:52.9614956Z", + "startTime": "2019-10-14T04:47:52.9614956Z", + "durationMs": 2000, + "status": "Completed", + "name": "dataset2", + "dataSetId": "7d0536a6-3fa5-43de-b152-3d07c4f6b2bb", + "dataSetType": "Blob" } ] } diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/Shares_ListSynchronizations.json b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/Shares_ListSynchronizations.json index 633e2acd8f3d..88b0b7efaaa2 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/Shares_ListSynchronizations.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/examples/Shares_ListSynchronizations.json @@ -4,7 +4,8 @@ "resourceGroupName": "SampleResourceGroup", "accountName": "Account1", "shareName": "Share1", - "api-version": "2019-11-01" + "api-version": "2019-11-01", + "filter": "consumerTenantName eq 'nda'" }, "responses": { "200": { diff --git a/specification/datashare/resource-manager/readme.md b/specification/datashare/resource-manager/readme.md index 5d1040195bd8..cf5fd2ab8e52 100644 --- a/specification/datashare/resource-manager/readme.md +++ b/specification/datashare/resource-manager/readme.md @@ -63,6 +63,7 @@ swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-sdk-for-go - repo: azure-cli-extensions + - repo: azure-sdk-for-js ``` diff --git a/specification/digitaltwins/data-plane/readme.md b/specification/digitaltwins/data-plane/readme.md index f39f368708dd..c5a96a455705 100644 --- a/specification/digitaltwins/data-plane/readme.md +++ b/specification/digitaltwins/data-plane/readme.md @@ -77,3 +77,28 @@ See configuration in [readme.typescript.md](./readme.typescript.md) ## CSharp See configuration in [readme.csharp.md](./readme.csharp.md) + +## Multi-API/Profile support for AutoRest v3 generators + +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +This block is updated by an automatic script. Edits may be lost! + +``` yaml $(tag) == 'all-api-versions' /* autogenerated */ +# include the azure profile definitions from the standard location +require: $(this-folder)/../../../profiles/readme.md + +# all the input files across all versions +input-file: + - $(this-folder)/Microsoft.DigitalTwins/preview/2020-05-31-preview/digitaltwins.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/frontdoor/resource-manager/readme.md b/specification/frontdoor/resource-manager/readme.md index 3e959cde8d90..70eef2f16531 100644 --- a/specification/frontdoor/resource-manager/readme.md +++ b/specification/frontdoor/resource-manager/readme.md @@ -272,9 +272,9 @@ input-file: - $(this-folder)/Microsoft.Network/stable/2020-05-01/network.json - $(this-folder)/Microsoft.Network/stable/2019-11-01/networkexperiment.json - $(this-folder)/Microsoft.Network/stable/2020-05-01/frontdoor.json + - $(this-folder)/Microsoft.Network/stable/2020-04-01/webapplicationfirewall.json - $(this-folder)/Microsoft.Network/stable/2020-04-01/network.json - $(this-folder)/Microsoft.Network/stable/2020-04-01/frontdoor.json - - $(this-folder)/Microsoft.Network/stable/2020-04-01/webapplicationfirewall.json - $(this-folder)/Microsoft.Network/stable/2020-01-01/network.json - $(this-folder)/Microsoft.Network/stable/2020-01-01/frontdoor.json - $(this-folder)/Microsoft.Network/stable/2019-10-01/webapplicationfirewall.json 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 6aacbd66655b..a2a372685861 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 @@ -1250,6 +1250,11 @@ "Pending" ] }, + "resourceId": { + "type": "string", + "readOnly": true, + "description": "Name of the guest configuration assignment resource setting." + }, "reasons": { "type": "array", "items": { diff --git a/specification/hybridnetwork/resource-manager/readme.go.md b/specification/hybridnetwork/resource-manager/readme.go.md index d1f3880de6c2..31aa99b2c827 100644 --- a/specification/hybridnetwork/resource-manager/readme.go.md +++ b/specification/hybridnetwork/resource-manager/readme.go.md @@ -8,12 +8,19 @@ go: clear-output-folder: true ``` +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2020-01-01-preview +``` + ### Tag: package-2020-01-01-preview and go These settings apply only when `--tag=package-2020-01-01-preview --go` is specified on the command line. Please also specify `--go-sdks-folder=`. ```yaml $(tag) == 'package-2020-01-01-preview' && $(go) -namespace: Microsoft.HybridNetwork -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/management/2020-01-01-preview/$(namespace) +namespace: hybridnetwork +output-folder: $(go-sdk-folder)/services/preview/management/2020-01-01-preview/$(namespace) ``` \ No newline at end of file diff --git a/specification/hybridnetwork/resource-manager/readme.md b/specification/hybridnetwork/resource-manager/readme.md index a05587f655d5..e409f06d6d4a 100644 --- a/specification/hybridnetwork/resource-manager/readme.md +++ b/specification/hybridnetwork/resource-manager/readme.md @@ -80,3 +80,33 @@ See configuration in [readme.typescript.md](./readme.typescript.md) ## CSharp See configuration in [readme.csharp.md](./readme.csharp.md) + +## Multi-API/Profile support for AutoRest v3 generators + +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +This block is updated by an automatic script. Edits may be lost! + +``` yaml $(tag) == 'all-api-versions' /* autogenerated */ +# include the azure profile definitions from the standard location +require: $(this-folder)/../../../profiles/readme.md + +# all the input files across all versions +input-file: + - $(this-folder)/Microsoft.HybridNetwork/preview/2020-01-01-preview/common.json + - $(this-folder)/Microsoft.HybridNetwork/preview/2020-01-01-preview/virtualNetworkFunction.json + - $(this-folder)/Microsoft.HybridNetwork/preview/2020-01-01-preview/device.json + - $(this-folder)/Microsoft.HybridNetwork/preview/2020-01-01-preview/operations.json + - $(this-folder)/Microsoft.HybridNetwork/preview/2020-01-01-preview/vendor.json + - $(this-folder)/Microsoft.HybridNetwork/preview/2020-01-01-preview/virtualNetworkFunctionVendors.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/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 index 92cead192a9b..380ce4ca0668 100644 --- 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 @@ -2,8 +2,6 @@ "title": "Get an application by Id", "description": "Get an application by Id.", "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain", "application_id": "194e282c-290a-4858-b68f-4274690697fc" }, "responses": { 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 index f32e2b04e93d..e90e0ecd4bac 100644 --- 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 @@ -1,10 +1,7 @@ { "title": "List applications", "description": "List applications that are accessible to the signed-in user.", - "parameters": { - "centralDnsSuffixInPath": "azureiotcentral.com", - "subdomain": "appsubdomain" - }, + "parameters": {}, "responses": { "200": { "body": { diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicecredentials_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicecredentials_get.json index fca7fc82f2c1..54b2c4c8aabf 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicecredentials_get.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicecredentials_get.json @@ -9,10 +9,10 @@ "responses": { "200": { "body": { - "idScope": "", + "idScope": "", "symmetricKey": { - "primaryKey": "XaMfV3vryCQw963L2IALf1SdApQRzSIBQd13/fassqM=", - "secondaryKey": "s+4uT31TRZJcTSGxZUPZb1yznjTicu4jr9tXNrg+xIQ=" + "primaryKey": "", + "secondaryKey": "" } } } 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 index 42fdabd7c518..6bdfbb5b6efc 100644 --- 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 @@ -8,8 +8,8 @@ "body": { "type": "SymmetricKeyAttestation", "symmetricKey": { - "primaryKey": "XaMfV3vryCQw963L2IALf1SdApQRzSIBQd13/fassqM=", - "secondaryKey": "s+4uT31TRZJcTSGxZUPZb1yznjTicu4jr9tXNrg+xIQ=" + "primaryKey": "", + "secondaryKey": "" } } }, @@ -18,8 +18,8 @@ "body": { "type": "SymmetricKeyAttestation", "symmetricKey": { - "primaryKey": "XaMfV3vryCQw963L2IALf1SdApQRzSIBQd13/fassqM=", - "secondaryKey": "s+4uT31TRZJcTSGxZUPZb1yznjTicu4jr9tXNrg+xIQ=" + "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 index 35fb1496150d..94c03cc26f7c 100644 --- 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 @@ -8,7 +8,7 @@ "body": { "type": "TpmAttestation", "tpm": { - "endorsementKey": "AToAAQALAAMAsgAgg3GXZ0SEs/gakMyNRqXXJP1S124GUgtk8qHaGzMUaaoABgCAAEMAEAgAAAAAAAEAxsj2gUScTk1UjuioeTlfGYZrrimExB+bScH75adUMRIi2UOMxG1kw4y+9RW/IVoMl4e620VxZad0ARX2gUqVjYO7KPVt3dyKhZS3dkcvfBisBhP1XH9B33VqHG9SHnbnQXdBUaCgKAfxome8UmBKfe+naTsE5fkvjb/do3/dD6l4sGBwFCnKRdln4XpM03zLpoHFao8zOwt8l/uP3qUIxmCYv9A7m69Ms+5/pCkTu/rK4mRDsfhZ0QLfbzVI6zQFOKF/rwsfBtFeWlWtcuJMKlXdD8TXWElTzgh7JS4qhFzreL0c1mI0GCj+Aws0usZh7dLIVPnlgZcBhgy1SSDQMQ==" + "endorsementKey": "" } } }, @@ -17,7 +17,7 @@ "body": { "type": "TpmAttestation", "tpm": { - "endorsementKey": "AToAAQALAAMAsgAgg3GXZ0SEs/gakMyNRqXXJP1S124GUgtk8qHaGzMUaaoABgCAAEMAEAgAAAAAAAEAxsj2gUScTk1UjuioeTlfGYZrrimExB+bScH75adUMRIi2UOMxG1kw4y+9RW/IVoMl4e620VxZad0ARX2gUqVjYO7KPVt3dyKhZS3dkcvfBisBhP1XH9B33VqHG9SHnbnQXdBUaCgKAfxome8UmBKfe+naTsE5fkvjb/do3/dD6l4sGBwFCnKRdln4XpM03zLpoHFao8zOwt8l/uP3qUIxmCYv9A7m69Ms+5/pCkTu/rK4mRDsfhZ0QLfbzVI6zQFOKF/rwsfBtFeWlWtcuJMKlXdD8TXWElTzgh7JS4qhFzreL0c1mI0GCj+Aws0usZh7dLIVPnlgZcBhgy1SSDQMQ==" + "endorsementKey": "" } } } 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 index 45baf0130156..74ec4cc31c13 100644 --- 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 @@ -1,6 +1,6 @@ { "title": "Get device properties", - "description": "Get the current values of all 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", @@ -11,13 +11,29 @@ "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", - "osName": "osName", - "processorArchitecture": "processorArchitecture", - "processorManufacturer": "processorManufacturer", - "totalStorage": 41, - "totalMemory": 49 + "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 index d8c1316a830f..f88d9a5dd4a3 100644 --- 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 @@ -6,30 +6,24 @@ "subdomain": "appsubdomain", "device_id": "mx1", "body": { - "device_info": { - "manufacturer": "manufacturer", - "model": "model", - "swVersion": "swVersion", - "osName": "osName", - "processorArchitecture": "processorArchitecture", - "processorManufacturer": "processorManufacturer", - "totalStorage": 24, - "totalMemory": 18 + "settings": { + "voltage": 25, + "current": 7 } } }, "responses": { "202": { "body": { - "deviceinfo": { - "manufacturer": "TODO", - "model": "model", - "swVersion": "swVersion", - "osName": "osName", - "processorArchitecture": "processorArchitecture", - "processorManufacturer": "processorManufacturer", - "totalStorage": 41, - "totalMemory": 49 + "settings": { + "$metadata": { + "voltage": { + "desiredValue": 25 + }, + "current": { + "desiredValue": 7 + } + } } } } diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_create.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_create.json index 5013639058c3..d9210837f4a1 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_create.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_create.json @@ -1,6 +1,6 @@ { "title": "Create a device template", - "description": "Creates and publishes a device template. In the body, specify the full device template object.", + "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", @@ -39,7 +39,7 @@ "displayName": "Temperature", "name": "Temperature", "schema": "double", - "unit": "Units/Temperature/celsius" + "unit": "celsius" }, { "@id": "urn:storeAnalyticsCheckoutPnp:Interface:Humidity:1", @@ -50,7 +50,7 @@ "displayName": "Humidity", "name": "Humidity", "schema": "double", - "unit": "Units/Humidity/percent" + "unit": "percent" }, { "@id": "urn:storeAnalyticsCheckoutPnp:Interface:Occupancy:1", @@ -110,7 +110,7 @@ "displayName": "Temperature", "name": "Temperature", "schema": "double", - "unit": "Units/Temperature/celsius" + "unit": "celsius" }, { "@id": "urn:storeAnalyticsCheckoutPnp:Interface:Humidity:1", @@ -121,7 +121,7 @@ "displayName": "Humidity", "name": "Humidity", "schema": "double", - "unit": "Units/Humidity/percent" + "unit": "percent" }, { "@id": "urn:storeAnalyticsCheckoutPnp:Interface:Occupancy:1", diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentral.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentral.json index 0d512680cfed..cf4e8bbfa90e 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentral.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentral.json @@ -304,10 +304,6 @@ "description": "Display name of the device.", "type": "string" }, - "description": { - "description": "Detailed description of the device.", - "type": "string" - }, "instanceOf": { "description": "The device template definition for the device.", "type": "string" @@ -504,7 +500,8 @@ "properties": { "email": { "description": "Email address of the user.", - "type": "string" + "type": "string", + "format": "email" } }, "required": [ @@ -1186,7 +1183,7 @@ "/apiTokens": { "get": { "operationId": "ApiTokens_List", - "summary": "Get the list of API tokens in an application.", + "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" @@ -1234,7 +1231,7 @@ }, "put": { "operationId": "ApiTokens_Set", - "summary": "Create a new API token in the application.", + "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" @@ -1446,7 +1443,7 @@ }, "put": { "operationId": "DeviceTemplates_Set", - "summary": "Create or update a device template", + "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_create.json" @@ -1943,6 +1940,7 @@ "get": { "operationId": "Devices_GetComponentTelemetryValue", "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" @@ -2192,6 +2190,7 @@ "get": { "operationId": "Devices_GetModuleComponentTelemetryValue", "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" diff --git a/specification/iotcentral/data-plane/readme.md b/specification/iotcentral/data-plane/readme.md index 29406dbbaf09..ad32b23a5c39 100644 --- a/specification/iotcentral/data-plane/readme.md +++ b/specification/iotcentral/data-plane/readme.md @@ -53,10 +53,12 @@ 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/iotcentral.json - $(this-folder)/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentralapps.json + - $(this-folder)/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentral.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. diff --git a/specification/iothub/resource-manager/readme.md b/specification/iothub/resource-manager/readme.md index cc0782d00196..f0842a0bf742 100644 --- a/specification/iothub/resource-manager/readme.md +++ b/specification/iothub/resource-manager/readme.md @@ -195,6 +195,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Devices/stable/2020-04-01/iothub.json - $(this-folder)/Microsoft.Devices/stable/2020-03-01/iothub.json - $(this-folder)/Microsoft.Devices/stable/2019-11-04/iothub.json - $(this-folder)/Microsoft.Devices/preview/2019-07-01-preview/iothub.json diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/certificates.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/certificates.json new file mode 100644 index 000000000000..6760c1d5970b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/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.1" + }, + "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.1/common.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/common.json new file mode 100644 index 000000000000..c4c425f7fe7e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/common.json @@ -0,0 +1,73 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.1" + }, + "paths": {}, + "definitions": { + "Attributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Determines whether the object is enabled." + }, + "nbf": { + "x-ms-client-name": "NotBefore", + "type": "integer", + "format": "unixtime", + "description": "Not before date in UTC." + }, + "exp": { + "x-ms-client-name": "Expires", + "type": "integer", + "format": "unixtime", + "description": "Expiry date in UTC." + }, + "created": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Creation time in UTC." + }, + "updated": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Last updated time in UTC." + } + }, + "description": "The object attributes managed by the KeyVault service." + }, + "KeyVaultError": { + "properties": { + "error": { + "readOnly": true, + "$ref": "#/definitions/Error" + } + }, + "description": "The key vault error exception." + }, + "Error": { + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The error code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The error message." + }, + "innererror": { + "x-ms-client-name": "innerError", + "readOnly": true, + "$ref": "#/definitions/Error" + } + }, + "description": "The key vault server error." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/BackupCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/BackupCertificate-example.json new file mode 100644 index 000000000000..7eca93426b4c --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/BackupCertificate-example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "testcert", + "api-version": "7.1" + }, + "responses": { + "200": { + "body": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLm85bmpNWEFSZWVla2NaRXBsVTNjdUxQcVZlWmxFbGRDM01XOWpYR0h6bnBXRTdHRGVOSXJraGZscHdTWXFnQnBYQkozMFpUQkRpRmpROENXSnJfUGlsUWNDRkZyN0xrdWJhWUs0TW1zcVh5WGIzbkRJcUJkQmZIUVNpZ1ZET0J5Ym9sUlRNNDYzYjBTbXhLVzJheEdFS2NuZzQ5WFkycG1SR0Vrb0plcHJWZ0tyRkpOUGQ3cGJIS3hQSWdDOFlnT2xudnZxR280RlRDSzh0ZWotcUt2UzBfRGV6Uk5vdTZqZ25SekpxX0g2NGxWMk1hQ0NnUy0xbTlyOGVOTVVvSlhTV1hwc0lneng1RzdEbzIya1ZEY25vMW9rajlCMXNvbklkWmtuY1JybDJBVHNRZVlzZXdkUVd1VmhxRzVLN0pNQWo5YzBRdkxhTmlpdl9PY2pFcm5qUS4zbmI4azJ3SEcyNHFJelNNb184WG13LnJzc3NMNjJ1aUNfTm9IbG5zQlgzcEEtck1uY3g5R3V2NmJYSHpKamxwOWNMUnVaSDBSWlJYVXRwU3BPQWdyZ20tU3BxeEdWSjd2bmprbV9FSzJwYy1sZHNjUWtRSDB4bVFVcGZFNzN5b1VTYTNXVVNMS2VIVnJLdUg5MUtJR0tLODE5ejc5d1Y5Y0F3UjlzcHJxbFFWZnlKdlNFM2tnZTh1RVBpRFFVMFl5WnJqVjBsMGJCU3VkeTN1MVlsVHB6Wk1EWmpUcE05ZGtMclgtaGdxZ1FGa2xFa1hNRWlzd0RDZVM3Y3J2bFg1bnVzbWh5SkZCMklCd3dxNWJieHptV1diU3JOc3lFMmJmWEpXOWN4TFlQcnJJZFpfbkd0X29RSGVQcUFZTS1iVnpTdzdBRGJjMU15NTZwclBGLW9PSm40MHptOTBaaFBTVGMyQXNKRGFBa3R5WFU4WktOYUhFVUlHLWI1SGhUdFBuZ20wN0FrWEtQNngwaDhzZ3ZIaGdCeGpfdWRfQVpQc3pLWG1HdUhFTW9lRGhpT3NkQVdRR0pwR2t0NHVlbmZyamNSeXVlaXJiTC1RV3o4MEtZUnk1QklxbzVJc19RVHpWN2dqMGstYS0td24tazNsNTJ4YjhaNkRXd2tWZ3hqUlNXOXZnV0pVd2U5M1ZrVWtHM3NLRW5SOE9ueTNjWlhQVl9LbWtBTEdlR0ZzQm53SmQwY3dueTBCN2I5VWQyQ19kWEZ0N1BvbnFVNldfT016cC1Nb1NtRzRHbEFpUkVfQ3FrWlhkalhIMVItSmpObUNfdXlPUTdaN1BVaDAtNmd2YUxpcE1CamlWR1FwdzlEZDhmVmtCbWk4VW5uOUxPYXJmSXVtcEJyUE43TTJhM05KdjN6b0NkanhZVFVUMTN1aElpYWl3aExoUFZhT2pUbFRmTkpqbHhIbG5lbGJ1RWJsZTk0bVV1bW8wcjhKRlFMSDdfRjhXMVo0OC1BcjhYYXJwMXhIY0FReHk1WWYwclktdUU1dTAyRnRHUHlPZ0JfNV9WdFlNR2VfRE1mdENLOGVMZGFnVllMRDJDNDUxTldZeVVfeHdNUWdQbXBaMWFnSEdCb2s0ejhsSFBndVhCQ3R2WFFuTHBXQTVBamdOLWNoWjNwUGJmc2RkNjBhekJuWDVaVXQza2hYaWNDdWk4b0xidEtzQUdmckNOZzFwT2Q0MHBHMEJlVy1lNVE1WWQydjY4eFh5a2RiTXhFblFCM3Fzd1djVlh1QXBIR18wREZVVmZvSlc2aVBZcDNWVE51amM5M3QtMDcxWnlZbUZ4V0RfVThMYTAtM19RLV8yZ0pwMVBaVV8tMVBRM1huLXdSWk1vb3JkZGZQa1VPZ0lqdWkwa1IwZWt5RjZvdWdLNnJrSVZHaGp3YUp0ekdKczJLdGxncnRCcEs2MXZEaE5zbFR5VHU5OUp2T2RFTXhwRG5lTEg4NnlvVnhxT3lIT3lxNjByXzdpTHgtdy03Q3FzWTloT3dmQlBZZ3BQVlM2bm9oZVBocTkwaGJTX0lrM21YbnRkRUNMREtSMi1wWFh6bjlPRjZIN09EdHB4S0VXQkdCaHJ0Ykxmd2JZS3dmWmZSVTJVUHpkLUxFd1lQdDloU203Z3lSODNoYkZiSFNBV1cySncxRWl1c3FURWRsRW1lQ3k2cFp1MVFZWko0TUQ0OG5rVXMwdmVHUVhTU2Ytb2RhQm1fYjZZdVh1cWcyWk03MlZjUTd4ZzV4MmpFenFqcllmdjdTTGJINFZBcWp0aFg5LUdRaWEwWEZaS18xempIenhkd1B0R2lSOHJfMkFFZTgtRXFoNi1FaTZKdjRFZjYyMnRrNWFJUWx3R1pETWpGSVNuUkpRdV8xcnJiY1E3enZsbWhUSWFQcUJNRFVxeHBEOXNWUlhuSHdIaTl1b1BCUTllbWJIMkV5WDV6MEhWRXlDa1JEbUd3cmR2RGdsOFVzMUhURjVwYXlYZmF2WkZUZjl3WFZyQXpsRFBEQkFJVFMzWnVJMEJWR2pJUGV1SnRiako4S1pTczRFQVNRRTVyVjViTUpNQXcwa19nYkVRTEZGSjJVb0ZzcWU1QUszM2xGXzR5cGMxU0JaWjJfUzYtbEQyNkpyRFVJSjFFRmJhbWtoUk12bWJIT1Utc0hDT0lRcHdadlJzV3Q3NExSQ1ZyQ09jMGpUdE5TT1JPUW5XRHVXRlFXSzk1TkRGMG96WjIyLVFEMU9YOE9iU3daaHdOXzNfS1pHRmtVMEhNdzNjSTI5LWUxbFltRDV3cmJ0ZlRFbllOeHJKOGpuUWFBY2FoNy14Q0JKeUQ3elo1MXIzRVVyY2VnazBzc1dLeHRPVjRLcTZENmxuVmU3bFpUT1dfTU5aZi1JSzJUbnZCaVZIMHk0SkVGaUxzSDJHbTM1d28yYlZVaXJsT1ljVEk1NlZhdDhMRWhGaEotVlUyNk84NHo2dUJFZmJucEZLbmdKc3pfYVlucW1zNWV1bmd3ek5ndjdlT0U0cUdKSURyMTRBUXRWdEYxcWdrZHNnVllWVXg4U29SQ0NobE5VUzRNRGxhc1hwS1VmV19ENWIxbDRkbXZiNEZNRHJqakJ6djk5dGJSeGZFYUVOSFlYTHZFZnJ0b0pMeW9na2tmNkxlbVoxVDZRbnRtNlR4S1IycU81WU1vMnRJZHlQNmZNRmkweEYtdE1IaHNSdVN3VEpybW1nREcteHVpZllVNkpfaElSNkMzVmo2VkFMMW1oZy0xeW1pRXZuanVLbElONzc4NmFWdVNpNmx5TjJJNzZqY0R6SHZ0VW1ibkVvWWtORHNPQXdqQk9MNFBlS0VjR1hWcm5YNDJhNW5IRWM2cmZQdjZ0Q2tVSUI0UldIdzEyUTFiNDM2N1JvRS1PTWN3TnV6ampob1M0S1ZJbHo4UEFMOW9YYTR4NXlQeG1aVzZ0UUVna1pKeFhEcS00SWRtd1UzTnpVZUoxdGpNaXFsc0xRWDdlc29fTHRtTWJ3bm83YkI3bjRlVnZ4aUtQU3p3dW94c25aaGs1b3ZSSE1xU0NtZjU2MjJvUTZvWEdmNUJLWExlQWdqaE1Sd21razEtUzlGajlyc1hlT19VYjJOMF9hVEFLemlidXIxNVcxaHI3Wk1PVFlxOFlSSGVPaWxSX3Bkdjl5NTlDRDQ1WmE0ZXFURHVrNmRxZ1d4YnoyVVVtMnpwM3pvTHVKSVZ1Y3FIaUVRTVNfMnFKcy1xQTAwT2FFY3huZTM2Q1RsZVNwZjF5cjh2VjNWNW1mQU5zRnJBa21CMnBRWTNfZ21UbldTYTJ3UWlMa2RFRllPSExTeEk5UVowNHo4ZFRfbW5QMmIwWV96N3ZLa0VGQmFpNU02UFdPWjVIOUx1M3Rnay1fR0g0ODd6ZHpuQm0weWZZY3ZIOHJUd1QyQl9UZVRFMG4xcWFRdDRiQ0diUkFQNE1DTDl0SGlIcmlzWEllejQzZlZ3b1c4R2x4YmxKanlLWkpXbmlRNjlBYks3SmYyUER6d2NVSHhkZU5HNGxEZmt6WmFxU2lybGRzZlhXOHBGLWZ6WFVVWHR4eDF4Um5nQ1hJVkxLbU5ZbV9CNnNrNGo0VzROVFMwQTBOcFhsZGJCWjZWWmFDMDNvRHVGUFY0MGtwdWQ0WEd3Q1l3M244ZjFHb0Z6Sk42QjFqOTRLeTdtNE5YT1JsQ3ZaRW5qZTl6T241T1d1ZG9USWRoRzBobXVDUTZ6TXI2YkVaTUFoV1ZFdlREY19iXzZsOWdLWmVxNmVtekxvcmptOEQzLXcyLXRBYlE2Tmpjd0J3eEhMZzlCRllRRFdvaU9UVmJKN2VBcUVFMHVxVkhBcE9KbFVIc2tmQy1uV3NzOV9fRTFURHBLcjRfRE93NFhPUGNzT3dlVU9EUWg3cVFXRE1ZcDVHU1poVWE4MVVHczhmemZKU3JPbmtaTmRVTS10Y0h3R01mX3didy11dmt4UFUtV0tvNUNqR2M2aU5KMDB4MjZZdUpCWXd6TVFyeDBJQWgxMjVBWlozX2FvaFFpLWw3a1pZVE82Q0JVOVZsYllNMndrZXp4ZGhrQ1oxd080Z1NNbDlKU3A5ejhxNV84SU1WM1pma00xV1VqSGZMQk4xRXdFMjRxZFVzcWxyU3NZN1hQaVlpcXQ5ZktXVmZDTWw4RU0yd2ZHYlhxMUI4eWl2UlpMcko0eEk2MUdVUWJFVGU4akNTYTF2aUxxZ0FIa25IYjVjVHIwbDRhTW1EZGZKWnJxZEdpb1lPb2IwdHBuc3IxanRfZm1obGhJa1NSQnREUk5XWEU1OXBjVXlULXpyVjBxZl9sOHN2TlNEV2N3d09YQ3lITWZzLWw0T29xMldVWTVLQi1nSG1HYUJod0oxa19ra3V2S0hlMl9TY0loc3JjTXV1eW5aLW14Vzl5NHBBS3pvdVFsQjR0ZGZvbHdSRk5KX0tHYWJPZXJiWFdDT0ZTd0JVTjdNaG0wOXNyVS1VWG5od1IwdTYyTjVvMDlfbGN5eThnWDg1ZUVrenhuOGZ2NHd2T0Y2dUd1cFk5UGxpSTRLMTNqSHlOd0ZuY2VmRlp2b0dxVlhkcUg5RGJkYS0zY1FhbVFlNmlMek0wRDlnLXlFc2NBTkpKS3ltelVzemZZdV8yY0p0TEhsd0I3NVhLeW1EMG9nUkRvRkRwTmNPd1dRRUlwdVJwU0pfdWtzR2EwZkd3MGVBTU4tQmc1OUs3emhRWHJISUZOckN1S1VPMVdvTkV5WkM2UGlKSUwtUlRsTFQ2WlBNZmdSZzZiUl9aQk43X2dseHBIakNDaFZXMkZ3MnJFUDJJX1pSeHFqdS1WbmVwV2o4eU1CaHZXZzdXNm9QWm1odmVtUTBkQUljNVZTbVVaelhvNFVURmJxSFN2MGlyVTNscVk2eUl1MGRPd2t2MlF4ZENfQVdRUmdLSGRUeG1xYXFUSXJwclZyUHZ1MDFQSGlFbVRnaDZZVEZ6Yllqb3JEeFExWDhlTUN5Rl80cWNjMnhOdTJRblBIdUR0RGZkSy1NV2xJUDhHUEhSMmhPMjlCa0JJSEM4TlgxZmxDN1ZSZkZsQ09McGVIeWl0MGRSd1d2S2tieGNIWl9fRE5ZLVBNQlZMZGpyR3lxT2JoQnpQZHZMeFpXWVU3THNRbnM1dmxiMTc5YXczX3VmclRIWGs0MVpjaDY2ekFRRl9tekQ3ZEVuMm1fb2tBaTh6NTRwdzdxUDAwNHkzenNPd0RmR0htYWF2c3dGMW5NMUN2YXhXajRINE45dVNUaV9DM1oza3lTRHlUNGdUZjNqc0FKUEJybXdSQVBpaU5PTTU3c0x2Y3dJRk9ENnA5QkdWbjFwbjQyZGRTU3A1M3JieTZEcnlwcHdDaDFrampQX3lCbTZRZnd6MElGUWJiSG1zVDNVa2RMb1dURjFSMF9sbjJtR1kxU0hHT2o3VHl1YnQ5d2xLVW5nczVMTWhVcHo3NU1LR3F6UkFnWXNKcHVKUVl1RVpKeGFPSHNmY2VwakdrcFdoMEtfWkhZUEJESzIwOFVqb3FqMDdlVVVueTBaXzJrNXUxTjQzWGJ3V0ZvWVBhdndheW1MYkhWdkRwbzdwMU9JT1IyNkt0SzdPeGlnZ0ZybGVISWNaODFwQzRCdlNzRnZsY1BCZEpHLTZxWTU0Q3J0R2xhaDRvQWplUXgxWS1YU0NLNnZLYUIwWnZHc2lIajhRQ0ZURjRuLUJqTWIzWDcycDJ5Q0tPRlpMRk5qcVR1aHJoYXNnMi1pWTNOTWdwVEQ5eVBSdjA2X1VpcEVfYjVsQ0R0Mmx5QU5NYVpZR1RvSmJTSVhBcFlyU1hEM1dFWllhTGUzQmFSUEJUYTAyeWpyVFZPRDRGNHRFR3c5MkZJZThOSk5NYXRXMFhPSFAwVWxKTXlQUDF2MVdvOUh5aFllaDFfdWg3SlRLcS1hWnJjOS1Xd0ItQXBKTHBQeGxmRzlGZkgwdjNwSTl0Z1VndWJmSkJQVjMwNll2MlNqQ0M2MmVYN3VFTUgzcXQ3TmFYcFVsNXZEVHpfMF9Vc3VlWERQcDNqV01XQTMwenFaYTRFT0dXdElMb0tEM1RjRWNVcmJONGV1bHFQSkFNcWdWdmk2YWRGdTgxU2w5cU1rVVUwaWpqMjZhZDFaeVlEUUZtWlJ4NjJYUW9ZdG81bXJ0eFZhYWtNNndqbkVPSUdJaHhBTnJoX0dNVzVxREhzMEV6TDU4b3lOY0Q5dE1MUC03N1FCbTZwUTFsR0swMVJ6Y3FzTk14ZzRMTzl2ZHQ3NFpIdEhMXzA1TjF2TUt4TE5GbkdhZmwxN1E0eEM0Z3NQeXpYdzBjcklyV2tIQlNQX0NoWE94SmZORWdyNjJOMXEzQVJZa0U1TVlCbzctM3djb3dNT09GcTlrakN1ZGpoekplRjRTUHdfMnFVWVhZRTZsNXJTYjYwUFlFSkJxdW82Skh5ZmdlOXFJX0Rzdmg4eEY1STJfLWtLT2pxU3FZam02NjU0cXVES3phQ3JWLUJFLWtQNF9DOU5OQ0xTaEVWUV92Z3hYdDhzbTRWNGNRMElDRmFzaWV6VnNuV1QtYmRQTGxBT2RqOS15RmhYVTRUYVF3YnZqQ0E2UHQ0aDNVWGdnQzNqWU5IMmJtRGpYSzhFdFJYRTV6cmJsTDRKMFZ1OGxHQVBZaGtOcGNOakNrNWhSSW5jT0dybE9aUk9jdTdSeVczR2JWM2Y1MGJKN0xLNHJjMnJCMTZuemhBdk41WXlydWdwQzdCOE9OR3NTY25ha1V1alJzRzZGYVpydDNzTDJMOW5RTUNoNE9INFF3VWpKWFZKUFJ2MHhPTF9jVEQtdjk0QWgwbWdtcFJ2Q1dhUkl5MXRxeDZHTmZ1R1Nyb0tObmtHYjRiRE1oblpZMmwxQWluWHlCMG5uRGlvci1EUmo1cjhRZi1iaUR6cGhTallzZTZrakdLR0ZObzU4WjFfaGxEaGFob1pQX1lRdlBtWi1Tb2pNaGhMRXZqMXEyZzZWRVd6a1FDWTdIWVEwM1Y3cHVCVm4yaXM1NXpBSGV4cGpERWoxWDgxWU92bnVTdXRhMGx3VkFEMkRoNjZDcmM2VVh2SEtUZTBCeFlsQWdVdkhQc1BkSy1OdVk4S3RaeGNqTWNDVWM0OVl6VW43RVBTamFNaHJ2Ni1mM0pwc09Na3JwREpLM0dPTUVRMUV4cnhYV1lGaGtLaHR2UXZkMXZCVS12b0pRcWJveU9vS1hMM29Xb0FRVnljWlR3Y2laeW4wbUtkVF96NDNFZGhNcDNKS3N5blJ3OVZtSzk3Q3lldGl5LV9HaWVMSngtWDladVMzOUdNa0YxaFVmYmkyc3FJZGZMZ0diem5uMTluTlRVUDlOR3dhaWhybU9Ib1lZeUJ6WE4tby1UWUxhSS01bkNuQ2FSSW9QTF9XSVhyWDZPSzdZU21IWjk4a2xJS19JNTlPSXlWSllrMVh6bGVwd1lPLXUwU0x6bTEtN0dKSE54RGVOMlZhUEk3TThVem10X0x5alliWWxocFFJQnNyUktsMmZZeExKaGt6Q3NjcWp2bVhDemRLVDNhNFV3NDJ4eDlsOWl6dFQ0UmtnV21fYV9YWWk0b0gwdjNCUXRSZ3NfUTBPaGo2T2Y2dEtyZU5XZmcxVDRjMk01SERJd3UxTkl2QXBqNzZtOXJWQkdPWTZFUnhfa2Y3d2twb1g5dWRvcjBCbEx4a1FCc0lwZXpUdzc1MTBncU81Nm1UWXlBUzFCUVdOY1Q2aWhfN3F4ZTVoUkVlZVB5YUpFMnhqR2JNWGg3V1hGYjN0ejVWVWJOTFpxMjBiM3E0UFdkdjJXX1Foc2VUY0JTRDY1eVFPYndTai1UcVpNNi1teUZHb3B6dVdfRWcxU3pzNzRaY3RMSUxyN3pMLXRyeC1WTTVfVHllMVZXbG9ZOTZVYUJyUktpQWU1SVhKMlBQd2RIY1p4SWx4N3dBRXdueXVOZXA2b2NKcXRwZUJ1elB0LTFaX3UyWjZrQmR4V0lpYlVEaGxOU3AxM1NkTGw0Z2hkemVqZWFaYVllRDVtTGltWWJ4dEhsQ1ZiTm0yNU1ZbDYxMFU3QlZnNVJJSXB6VUdmZ2Z5NnpJRzRLQjBMR3BISzNhdHRRUExvQ1VlTDRYNVdBUUFsb3BRa0RKOU5lTHFGdHN4cWpZaGJnZ1Z5am9ScjNPOVhzYzlJVEtVaXJaUDlyTVl0eFduT0tUck9YYVk2WVR2Wi05QUhpT3ZfdTRhOElTS01DVng3OUlnXzdqTjFfREhjdGd5cEEzVnpkbjNKdlJJQTlfbHZDV2dTSS1NUjlPQ19xekhIUmU5dENqWklDVzhwRURSYVhZOHc4UUQ0bXJicmFLTTNsWmtTNUF2NVp2WjFRTDJlZkExbXlJdmN2czhmekxRUFM0Nm0xX3ZPVzcxN05ydDQzeUcwbUZxZnk4aExaZEUzQ2RkMzRtVVFXWVdqSkdvQXZ0VHBXRmpwWkwwOERjQUd0RzVzdkU0Mi1WWjRqSVVYQ2JsemZaczl3N2VsNThvRkJLUng5dUJLby1PWmYxTVloVEZrSlU1V3YtUEVreXRPSVpfU09nZVM2RTVMTUZsOVpZenZ0QkJuWWF0bDY4NGpEdWx0STh4LXpmSHdwUEFwNk9CQVpxalk3S3JoSVJuVGRoc2Y1VUpCcmtvU1JGUFlaaXE4RjJLWHA2Nm1PbDMyRm5RTVprMUlDVkxiYVpnUFlWNnl5UXpZdEdhbjhOc3BFTG10RWkwMVlTZE1ySUxkUF9TVTZwXzJ1NU1oY0RPMDF0Y2hwMHp6eUVfTVp4YWJodXpMWUVIeXJvYl83cjFKdWNjZUQ4SlM5T3JBdEk1YXdsbEhGSFRRWExOWGJuTHdTQ2JrdHNiTGFoa05ya0ZXR1RDNFRzUlBfYTlHMVhFTE5DRkhaMVhvS3NsQTdMMzFGaWpyNFpEYjRQeW5hT1BrSlhCcEx6MGNLN2FmeFVxNWlySHhZNEQyVkdNT3gwUmc5UEJJeE1vdzN6TmVGZ3Y5dzRTdkJ5VUpQdjNGV3huX004M3g5dldiWFh3bU9LbHlLNVpWQi11LWxKVno5Rm81YWRfVEtwUkxqSGdNWURKNU9Ka2dhaEFQMmhOaG9lb0FicnBPNzVYT2tYZ3pONDdwVW1kdzhmZV9FN3ZSeUREZi1LNVZNS2UzOXRPSi0xRmxtemJVc0pET0lScHp5WVl0Y2Q4cGtPU3JQYnIzMWdJNFRIUjJHV2xwZWJCZ3VhYmppck9UTjI1Zy02MmRPWWVKNHVwNjI3MjdnbWNQWF9EYmJfSFdrTnVLaXBmdkJ1UmVNN2J1WE9LVzg2bllHSW5ZNzJZZ2lvYVpIaEJnY3pHbktuUUlkWTJ2U3NzQ3E2b1FSUGJqeHRQZ1gxT1h2bXNucmNBencwN01ULTNueWF1RDBfNG90RGJueF92dm1fM203ajBwcjBGUWZ6NWs1UEVNUG1sOFVhenFxX2xEU3djV2JOU21JbWF3OWt3U2NXN2xrOUViNTRLRTRhaWt2bVRxXzRuN3lkSDNQblI3bC1RMXE2X2k5VWdHUVFfSmk5UDZQbmszQzd6TTVYbDBpYllEVXVUV2FUdlRrX2ZjaXo0VUJXWkV1T0lLU2xZaHVBVzFQUTJPU3NiUWxPbDU4U3ZvTEYtS2w3TmNkRXRBODJVWjdkLVFCN2xKNWFCcnd0Vmx6TDFxX2Y1UGd6a2NtcW1pLVViM2tUQ0xlNjJYbzN1MmFvSnNTQ0c4bXhwZkJ6dVFVVkk3WXdTa2ktWUtNUnlJSGhuOG9xRDNQS0xMbHk2LVZkZy1VREE1RWhhLXA0TnZYb2lLb3ptRHdBZFFpeG1IcnJTdUEwWmh0eE14N0FSc0pqc285blZKR1BOSzhCeTMtbXQycnNOOHlMdHpyRXdkUzBtLW1sRHRKak9CWHJ1NmhWOFBPeV9vSWVzYmJtWkcxSk96Tkl5YmhPOWdNakpsNTBSQXVmcW1sSXJpOEVXQk9vdzdVT1RKQjgtTkR6VzVXdWNiS0VLOGotdWtSYXhhQklPcTJBTnI1Tl9hTEF2RFpmalp1cDl1RGNTc2FUOTNWR0dmQlhHX1BYRlhGWnNtd2NnamxsQWN3bkhCS2V6QWd3SnprRXpFaEdEOFhQMVh0dXJPZHh2YTRyd2ZtVG1yM1pHVWFmY0tTUm5malpnVERSVThVRFd4ZjRwMjB1T1h5RzBBUzlJLUF6WGN0Nm5EOFVQUlB1WDQ3UG1fN05mdWFVTkt4SEZ2RFdOdWYwcVE1OFlvZmhydjJlRDlzUFJFWV9CWjhXWm9IYy0tbVZ5MmM0aDdvTTUzQlFKbTQzRzNkaXotclRwWE0xUDExakc4em5XU3RBQkJxbW40LXdKVVl1UGpDV0VtY29qdGtRZEZmcjQzRUNqTzE1SDJaZGN6MkphZmpUcmxPdWlQOG96ZjEwa2RTYjBURTFVOXI1dHRIU0ZzOUxPVlZHVjJnQUxjUGtMU3R0clgwMXZHMWZLS1ZTRVI2TzlZM0pZYW02X0FwU2xONnlRbmlqM3NJTzdKc2xYdHhaMzY2bXI2Vnl6WmphajVVODlJSjdJUlY3eXBkOWtuZy1RRlZMT0FhRGU1eENvZG1jRjY4ZGp4LTZBVWpQWnBHOFYxVG04OXh5c3BTaU40M0lmLURacTlaMXFjSXNDOUJ4XzlxTHE2S3kwNTIydnBKWkw4NEdCZElXM0FuUUdKbFY2dkRXbThpcF9LMjg2NG8zcEg4UTdFWnpqc05KZ3p6RFU2SkU2Y2psTVdhMDR5dkVMa2dnUm9feVM1MWUzam1BNUFFdWpXLUJ6TXlzTjVkeUpiZC1HcnN4VFltck1wMWI0dFNhMXV1ZHBSdWl2cUFLdV9qbTBvYTA4UHZqRjJyNjRXYXZQZHVxcUs2VGUtMDc1RkFQNHFEZE5ocmpJSHpneWEtUWowY2NCRWtZbUo3di1mUWxneUxzaF80bHJZQmVyWnNCMDM1Z2Z2b19CakQ0Q1VWVWFTRkRya2U2OE41N1prblU0UkZXN1NNQXViaE93WjlCd1pmT0tuajV3bDhfemRFTDVLVDBQUm5IejRjQk01OTZGNXhleDFORzNqME80Y3JDbzVod0xMMUVwMnVweVlULXpfTkdkT1MwMG50bGt0dnNKMGFZSURuQy1SSDRYcUdBUXlpY3hJVzNnTXh3LUNvYlIyUGdPa1dLTVBJN2xFelNLN0VKcjZkZENmblhHRF9scE9HSXgtUTROdjFOU3E4VGw1dkRtdmdOXzZCOEhHbmV5bXdpQUlJZ3NpWWhfUmR0NnBrdWJLVF92aFkwMTI1WWZkck9NaW9keTFLbEpNR3NJNGxqX1dJYVRHQjdoY1dtY0stMy1NNWlZVnJUSktaR2RZbUFobXI3bkZVT28zWFFCZkVVZFpKb2Itc1R6eDdNYWttd2JEcHdQdHB5OXFQem03akI0ZC1yYmlncDI3azRTYlVFOXNFWTZVeVVJVk80Y2l5R3ltZThpOEdLY2dSWXJ3YTZmVlItTnNvcm16dmd5eGZVcDFGWDZuR0xNbE5VMDNEblBVU0JLT1RWTzVnM2JuNG1DNWI3anBVQnUwQTk5R2ZkTEJGaXg4dURwR2NsQm51TFhncjcyRFdCRmFKeldkZXNZbTlaLWk0WDBaUTh4cVZwdGpXTnI5Sm5sVDlLeDVKZXdRSHZkeXRRdHRaTXc3TS01Unc5UHJreklWd1JPZE5PVkxwRWl5RmVqM3YyZmJGRFVoRmg2ME00NWRMQ0hqU0k5eC15dDZ6LUVtQlBpdGtkcWpUT3hLam1qVV9WNzIta09tVndhZkY3MzdTcVRKa0lpWlVic002bEJoQ3Rxd2cwNi1DelR4U1pMYVgzOF95dE51aUY1S0JfcXVwcU54SGJ4TTVZN0l5SnJUcGR4MG9qNFZzWDlxWkFjTGxCZnRNaTFUSTVLMkJRSERSNW5FY2UwT2J1SWpjdlNrcjNYMmZwUWQ1cHlLdnBXcXpNbnNuQ3NsVnYyWUY5ZDZHVWFKeHlfQ2MzRVJqOXZIMnRJb2hBckh6VzJlN1lNUTRyQnducnowOXc0aWNnNG11TDdVSnVsVnJLcjdJS3FDYjJyWFViTDBIRUVrTUd3T0pISEVnVWxlYzRGajRNQl9ZNnh4SFJuekVKMVVBRXVTeDJaZG9Bd1JsSjMwRHZYTWMxcFo0NWktYXE5eV9oOFJxaUZSUlQwSktjYzFpeFA1Y1JWRmVpbFhKWXN0cDV6X1pKZ1FrSTdCQlBaR0M2bkZ5RC11LWh4MzhQN0IzQjdUUzdoWVlXdm9ETFpGSkI0a1ZGRUhvNlRKdWNDVlpJaEFMdHlfN3dreFFxdU1mMFNOREQtV0FPWUJkY3JpZzZmYnNKSVhvc2lMSWNDM3hOOGw2X1dzNk1UMXdXODZkcWRUWkJnN1Z6YUlnREJ2RDRNakRLdjk2M0k2c3ZmeG5FWWNEQ3dDalo5M2JwUGRJd0htZEY1ZE0xTGZVLTExMktBN3dCQTJWYjU2cFdBMWk2QXo3Z1N6RXhQRkZvVkNBdFlJUnBFcHh5SVBaQUVHV05zeDNpNEk2Z2lyZi1hUmFWejFXUURCemd3ZDd3TlpqV2xrRVlyRFBBZTFPVnl0bU9HQWlGZmZiQWVPaVF0V1lzMHYzVGFTOGcydk9peXRvakE4ZzM2dDQwQTB6T3pKYnlzUUM0Z0hjODJuVDdQUDJBTFdPU0RLTmxSX2M0eHFWTkxjdlhxZHFBNmpVRlBUY1FONzk4U1FRbGprcmd1bzhEcGxTZTBnODl1VHUwV0ttcFltSFA0WEtmeXRGRWlBR1FDSmIwZUl6NVZsTlAyVnFiRGRMcW1JSzhuNVlNSUtDY2ItY0FUdGFoRXU4QkxQcVE2VC1aa2t4MF93M2RmZjhVX3ZCZUFwS090SERMWUVqcTBnVktxUHhaUWczY3RJS2oxdXJPeTIybnJ5aTlnZWZVc2QzZUYyMnBCQkx2YWVWSk96QUZndk5YdnRiTXFsUW1CXzQxNG1tVGVtaGFlNktjOW9KRF9sLUxKWDZPU1FISlo4MHQ4Ql9VZkdacFZES1NubmFmMmY4UHYyMy1EUmlGNlNyQ0ZKN0d4TEhUNXJSNzU2MW1YUlV5Qy1leWtocVI1ZFZSZDZhOVQwSGY0TlZSbjJiaVdxeWhPR2VUa0hKazE0YllOUFdYTm5XSHl1VTdyNEZoOVVsb2lES2xIQjQ0VjlmYS1YMzE0c2VHZHRqUFNLdWhFRHBMeV90VU95aWU3aThJaGNIaE1XOHlFNi1Oa0lZSnF4cU5EbjAwdUkzSEhEUWtGYzFQV0RYdlVIcnBJUFRJcFFBQ3c1dkNWT2JpUmFoQVBJM2tFRFh4ZkY1S2VLMXRuS1hsZWRxQmRIc3lCUkZuNnp6T1p1UHdOWktKNHlYVDhoS2wyamQtNTlqdWpibDBmNF9WdVJFdmVQOW9FWWtTOHU3UmlBVEVHa1lPVkg3MkZXTzBzLVNJWGVRRkQzX3VvWjdrM0xjSm9GVjlXMDZrQUVWY1dURVZGRUlwamtNMy1FYnJSUVdMcy1heWVYQkNFSUxsQ2t0di1LblA2N0pyZFV0bTI2cnFlVXZ5MzdTMTBCTE53YjRiNHBvREhMS2FveGFuZy1iRjZUb29PR01UU01MWXUzaUlLc0R3Wm9kZG1WR0xyQ3FxNWJJR1BFZTNoMnc1RjFNZ1hyVEU2TmFubXpKckh5eHVPc0VyaGctaEpGeGVCcWE4WjZZWFduTXIxNDhLanNoYVAyeVpFSWV6OG81UEc3cWRWaHFRenhYT1c3eEQwSTUycjBvbkhxM1hzcV9SOGhFby1UYVdPbmY1NW1YYTNWMk81LV9XanZxZThWdzdwTUF5dG95dmh2NTVTVk9xcVdkNXNIdGhITzd0OWlMdDNFYVMxX0ZnaU8zVmVENmlvUVBNNjZsWmhaYkpZZHo4b1RFeU9SR09KbkpjSVpqVm1YSlJIbXF2eXZsUlpjdkVMM19KR1hEOEZGNHlBVE0zaGhlNDN6VEJVdk9oYlRjckhNQTRLZjhWczR4cU02QWFsczVBZzRUbVZSSnVLLUVRWFZCaFE0TEpBbEgxVXZzN3lKYTdLM2hsQlZEMWo5WXRWS2htMVhPNFJySTNrZmVxYmxoMTRHQ1NEdnI2OExyTk53SUZsY1JEY1pKalBOQi1GWGhUd25PbW50ZVItOFY0UTJVa19tczdTTm9ZUElWRnJqY1R6X1ZkQ3dYRTFmMjNocHpqQ2tnWGlsSUlNNEpNMkZmcDNTZTY2c1JHc1RXXzBBbF81R3Fqd3ZfZFBYWDA0RHJNMFI5dGljTHhLczBnM3hkSXF1M0huamxBRFU3S0c1Yl9NUmxUdWJCQ3pEamtJQWRRUEFwcUhaWktnODYyLWloMDE4bERfbFViWEwyMGhFNFBNbTE0eEg3R0dPQ3FWa1o3RVU4ekd5Yl9xWHV4RF9LZHFLSVR5eUc2WC00MHhOeTJ1cWpDMmlvVVpiM25Tam5kZWFiX19kbC1jMDBLWkU4RnhTRnRMN0RreWxpTWM2Yy1VQXBhUlZKQy1aa2NBaXlPZ2NBOVZQa0x5a2xlcGRNYXY1Y1J2a3FvTHhmS3RMU2FhS0taWEdveFd5OWp2am5KZHZfMmZDTXlUeFdOUWl6MzI5NG9mNkNNY09sTmc5VW5iaUlHb1JVX20tMHQzamNRWHBrZ0pDWlMwcmQyZ3RGVExYdUVlYU9ZTnJjZ2dPWkVQMkstc19kNUlCU2JqNXE1QS1HYU9hbzFuRmdFOEFlMDdEVXVzeTBYeVEzd0cxb3JIOXUtSUxpSHpyd01Ickx5ZWkwYmpYSm9HcVBuSWd5d29nWjdZRmF6a1ZSTGE4OTBZQjlXR2p2SEdqZ19yYmVabWRDWkFoalNiTlRveFN3bGkxMnh0bl93WkNWVkhlNzUtSGNkTHZHaGgyekwwVjlROG84NFI1NUFKVV9fNjI2REMxT2w0cXVLcEt1Z1EwMHowZElPbzMwcG5IT3hqa2xlcGRMM0dyN3dHNXZsSUJKbXVWMlBReC1Hc0JmX3lYbUhxOXBZZ2RJeXl3ZjNqSjlDcmROYXM1RGNseUExUS1Sa3MzdWtyU3dublN1ZE5OeTNCRlJ5ZkgtbHhWQmpYSHQxUUlQM2JLbjRvNmRPSHNLclc5XzRPVnBNREQ0UjNMRmpYNFM3MDJ5ZmdXSkk5Wld6TDFadk40X2t0Zy1iVHNYOC1zdzJfa2Y3dXVldmJmMkYzLThmM3lvNDNUZ2dQaDU2TEZjbFNidGdaNE05MDRTLWF5SGQ2NkhVbmU5T1Axc1NldGdKWXdZZVN6TTgzY2FUUXVqRVA4bFhEQWxKZGJ0MTRhZ2FValJkNlBNLVVIUGdGUmNtRTd5Y0k4YzNSdWxrVkU2Wk5qeUU4VkNnaFRoN2JMNTJNYXhUcVMzQWJKNUpHak9ESkk4ZTczV1BFZHZPZ1FPNnZvak0xNDFnSjFtaW9rTFNIbXNwVWRhSFdIdkNkc2VHeTZyZmJfYktmeGJGS3FNTEN6T3VKbjhxd3hlNUxJQms2djJCUmNzM1I4ZnI1VjBSQXB5U3J3bmRuWExFRHdVRU90YzdwSTBqajVNeGFJaWxKU1FMb00ydXpiWXZaVE1INklXSndEdU1hNW04MlFCRnV3TWFZRDd6WmNwM0RGb2dFc0N5YnFjZFd5SFBhV3NxQk5GSDRuYXdwRnMwQ2xZMWMwbGZQR1RnTWZJeTRxRnV5U012cHNkYWZORUdBdVFpYU5zRzROSnNJV2NYbFNFQ1FsLVhRaHF2YkpUWE03NldPVTVld0RneGRGeG5WREVhdFRlQWZZaUVEN1ZBelFNUXNFenU4VUx4VmI3RWJzX3RsUW5hU2hVX3E3RjNUVEV3VUpPdDNCeFdPcWFCbmhNdUdOdU5CNXJabFd3YVhrUTFNdGxwOEFmWTBXSF9kX2F3VXdQbUpCQXFEX0xKRncybWVBS25OZl85NlZiUW5iU2J1ME5uejlvTnVXVmNMcWZIeDIzX1JfVVE5enZibTlkaGlSaUxSMnVDUzN2d21XS1UzVG9vbks2c1NpeWNmYnh2QjE1TnFnN2l4UUV6M2U2emVkX3pQYy1GdF91ckRrR1dOTFJ1d2Zyb001REQ5XzQ0UFVvLU1SQ2NiVGp1emxqQmVjOXRUc1NRdnZWVnp3WHdNY004Zl8yWEJxcU5OVl91b3V6dVRPWkFfbkNVTDV0T1dFSXZIZmlDRWxJV3lrS0U1TUFUUVlUY3FRd0VwNUlBeDFDOXdudnZtVk5NcmFFNHpDSDJuZllsUGNIYWpMUGlXcHpUdUR4anJGeFhIbVBUc1JTM0Q1YU1yTmM5emwyZkR6ckJsbzV0Y1pPT0ladlR4X0ExeFA3RlFnNjMtbUZzTGlRZG16NzM1bWVjUEFmdkROMnV4dWp3YXFITGx5NGlLelljVVRjbHFhYV92X25VM09ESUxkcWt1S1pCZFZzZGwwX19YeDdkSlFHNG5nN3kxU0d1V2Z1NEdRRnV3azE5b1hJM0ptU0c2WVZHSW5wSUlNYjcwSy1BREliMlZBWjlVaUloMW1HNmpUZWRHWHJtMzF5b3Jnak1PUlRERU1rYnZCeTFaazVrR0E0V05aSmRKRnlSQUtXT3VNbVZOVXRWcTFWRHpkTkpNdGhaWUZHQUU5MEtBZVlaZDdmaFRSZlY3ZlFYdzhWOENmM3IxdmdMTXJyZ2JSOGwzeUsybFBLMnhMcFl0cVpRanFaREpvSjlwUHBlcHEwRF9Dc1JEcVlDVi0zNE5GbldXWklZQmtmZTRPSGFFZTRlXzNQOGxNVTFKUWlJY1dXWmJ1ZUJXSnlpNDQ1b24wRm0zVzdlYTRnUUJCN2c1MzU4MUJBZW9ZQVRUYnFFV0J0LWU4OS1YMDd1Nk1vSDVKUU80OV9kSW0wNU11VVlrV3ZQODFHNDMySDFPYmgxRUJBNG1WdHYtM2ZqeGVDRldiZHVzTWxxa3RYbXVodjBEVWdmWGh4OEoxS2JaMUdjN3cyT1E4S29KZXNGM2QyTzIycjFkdHRIamdmbHBUZlVXOGFaN2hPZ2otSy0wRHg5dXV3ZmNVVWMwUnd6bkNMbVdqd0lnZ2NfQWZJbVRpd1ljZWgzQzlpVnpLdkcyV3BfZHpCMjgzM3YycGI3SlRKbmFYT3VSSlhiM1JQS0pONGcyVXV1NnNYc1JBd2FlTnVtVVVpM1B5b0pCY3dhZFRsbVVrQ2JNcjJMQzBzYmZkbjNMOHk0bTd1UGg3VTJ1RE5EaGk1LTZaWUNYZE5SRVNzajVrR0QxNzJoUHRSVEV6RzhUeEN6Nlp4dE5MQ004a3pHVWtjS2FLeVctZFdaaFVWRENsZVdnQ3F0NWdvNUI1OEVaV2RJbi1SRTRxREZ5RlBDNDg3bk9nMUVyVmZBN0NHWldha1F2QXN5ZUhKb3dkc0RrdzZIV0x0Y2ZwQTJENHEyZ1Z2aDdraHVNMmwxSE5DdWxNOWJSXzZZYlhuTGlCMzIzN3Zjc1d2bHpBVmJCd0J3WHRQT3RGWEEwc0V3c3Qtb2N5V3Z4WFNsT19kdlhRNUdHa2pLcjhFX1hzM0dvZmlqaHpsZF91OWFROGNTek1XbE5xRGNPWncxdncxNUtaeFNXR1QzcDJ4S1VHLWtSZW1Jc1h6VW91TFdma2RCbk41Vk1tUTdJTXA1RkFfcmdHWnFwVHByaHJMSlVaeTNZN3I4bG1McW15Z055a2FMNWkyVEpIT3RWVHB2eHVzck1LMnUtSzdpbUJVMHlkQndFaHNOS1RWMXlGZng4Q2JZazJTeUo2QVlWeWZLM1FhVEdqb2FFMGxocGNPRUIycmpfUDhFWHAydlJ3TWZsYjBtc2daYTFCOE93d1BXRUJMdlROVjVzUEYycFpUaFlnM2xWVzFjSlZlTlBLRTJfYU1zS0p3UGVIY19YTTNrdDBXVkpMbTBnZzE2ek5EMjlsaUlfNTBjOW1VN2NpVG1hNEd5ZzJtSkUzVkg3VWxUanVkRldmNTZpSEZHNlJpU0FqVUFtMmtBTkNGMjFyb3ljVUhFTGo1aVlQZF90S09vcmJvRDlWRGcweDRDc3BQMmRKZWVzMVR6aVMwNU5qU096cnd4dG5qMTBBZ3kyd3B5XzUtbVl6dVJvYTUtNXVPSFhDRkFNSW5QQ2doakFudHVYUGw5REJRb1ZSMWYwUS1NdnJWQU1Qc3pfaXMxc2xZaTlFT3NDUWp1R2hsNGlxYmVNWWRhbFVZZllGYnd5dktaTGNlZndjaVdpY3EycWhpM2FxaWQ5WkVwVGRyR0FvRjItdmd5cWVsSjlRb2NfSG8xRldZdjFrVUR3RTBmQ2ZlV1FteHBFMTQyYmlZNVNnV01CaE9tVTBKWkt1c0hCV3B1ZWJ1TDVlc2RHVEJwRWtpcEpHWmtQSlB0YzBvTlJSVU90TVdZTTYxbXZaXzRTTFpqOW9kZ2U1akMwMHBzSHVYTUExTG5USDZ0R3FnSDlTd1Izd08zOTNTQnRMRU5oNy10UEVEVWc0dHpJeXAxTHQ4R2dWS09DTl8tc2RCbnlpSjJaNmYwSThEMXVPQnJYN0JGb3E2aHlkOWtMWnZiX2E1VHFUdzNKZDJCdHRzOHBWS3hhaXFtTW1WUmZPbU4xYmRJSHhlVUNCQzdXdE1LZUc0M2FNLXpYZDBfUmI4MkxJTVVVRDJadUxXb0MwUGZzUmpiYWNpOVhBOFlBVTE1WllTOVh1YV82NUZYT2xxcl9sT1RuUjd5Y0JZY2J5T2tIeGpIWVFmRGkyQmZRV0NkMElXaF9WcUxNZWozT3ZEUW5FZDZvNEU1N21FQ1lQUEJUSkFIZTNHTjU2UEl6T2xLNTRtVV9USUNpX0JKTkRXemJvdl8wSnVEWExZMmUxZnhCOXNURmc4c1hINUozYUhYY2dpYUdSaHlnMjRKZElJV3dkcXFRbmlLZWNfS1IxVTJhbEVqX2xPQTNNb3FadHk5Zzhnc2RCMjRmQlRLOWJZUnc5eW9OVWhrSl9fM2NxNlozVVFvc3VrWklreDJwVlRoTkU3THdEQ2gxbnVRYlpvUlZrN1NKc1pjWkZ1TTd1SUJRWUNVMGRIQzFRS2lublQxc3R5WDduM3RRLXZPWGRsSENaOEtmSERpR2tsemdKUkhVSFUwdU9JQUNuNGtUbkRzN1ZrRGtEZ2YxalBhYXVYLUR4X19Cdm5oWXIxRFp5eS01N2x3SG85c21rZDFNcGFUVGRLR0cxOVktUDh3MmcyNXJCcVlWQjhBZXRlbXQ1bEtZdE8yckhJNmZSSDZrLVhSM2I3WkVlSFA5MV9UTkc4QVZtV1djMUhaMmdYN0gySzgyUzRoUk1JcEItdkxUaFI2QmV4bTdDeXJHSFZqNHN3M0dtZWd0cG1obmJlNEZQRVo1UTZnNGhScUpmYTJvOUswZDI1aktwaURBTFllRVY3Y1VDUjhBVjRYNU5WR3hWdWppOVdYN0gwaU1mUjZHMmpIVkFZSmloSkxOSC1JSENWcVhxdng0ZWNSRmVxNGRqUjNBWjRITm5kNUJBaGlTSHRObkhlM3EzeG93cFduQVh4M0hHeFZKcUozZ0pVdDVtdGcyb29pYnJiTTVFVU1HT290QlZGT0k5eGd4RmZYT3dhYXNPNWxIbTVoQnFWZVczOHlXS1FqYU50VG16TjlITjFrRWFfS0JacHU0d3RGeGswNkdWTmFEUS1QbmZBV0FJalByQ1FjSjJMQ25kS2FBSHJyYTQ3WTI0dWJYd1hPNUZsSVh6NElaZzI3Z3NzTXpVR3kwdUtGc29LdnJrZkFLdjVWblR1WlJ6aklrZzNoZExLR2FMb3RPVmFwZkp5VnNidGh6T0JrSERUMDllcVlOYkFwbWdYWGdoVTZSb05nV3IwOURSMmZQV1FyaUVzbm9Gc21yZWc1MUUtc2JUWjJCb3FqVW1zRnlndjJZdVhpdTVXdFFUNGtKQ1NxczZZVEw0cGhoQy1sTEhubWs3Q0ZKVnNMUHpUM2ZUcVF5M2V6Sno5dUxyUWJKRXVVMGgyWHQtNGwzaENtNU1hQlVVUGU1SU0tWHZhVk5QM3FQUGN6NjEzZkt1WmwzV3NmZVVtYzl4OWhrbElxRlI4RE1aOFdpYnhJSG5CXy1vTnpvcGV3SXZkOU1RV18wQ0hJRlNWWV9lMDNfNlN4SDBiLU5DX1Y3MXZHNXpNTXpqUkc2WXB1d3hMVUQzQnV6cHNWSVR5ZTd4M1RSWFBxNE42aXF4cFlTeWpyMUUwVnk2UXhzWGc1Q0NsZEozN0p0R082b3pTY1gtdDNKOFJBbVk5Zk41WTRURUZCZkxFT3VtdkQ0WXdjd0xuVktKMnVYN3A5MWZjTTUzVVRhTVc4UTZSZ2JFaTlnZjg5SXl1OFc0WTBIQ0REbDE2dVhCSXdZR3IxX1lyRy1zOUU1dU9FbjVpVm9oY1JsX0RrZlNNenBsSUhPWkJzLVM2X0tud2lZMXZYeThhTWlqb2tFaTVOZnBMbUdZdklwdk1MUFViUzBrQXhGTWo3dktnRXR0S09pU2wxVTJleFF5d0tsYnJtUGxFamZ3YnFjRVZkbmZvTFhIYXpfNlhYTE1Qb1FobWhKUWtvVFN6UDFIb2J4UWY4Uk53VmpaeGF0enpxMGtpMjVmUXlTNTlET0wtVGtiWlFqOTByUnpCQ0hVaTZlNWFmNUN2b3p1T2NIdEJmRnJHVkw4R0JQMk1JWi1UTGsxZXcteFpBbE10UVRITEVuUE1US1Q3X0VwY2dJalNDQTVsZHFXQndZVWxJaXZWd3NzNXRlWEswQkNvWjY3OWxyTVdTOEIwUmRwbjM1djlPU1JOejh3TUFTNER4UVV3OXhOTzBrSjdCWHdUM1dOem90dVFFVDFIeWpEcDV0UHY2MVZuVlVDc3pRME1TaTcwakU2OGtnVm9TM0sxaHFxNUhyZlJoYTVEM2MzZDFBWnJzaUVsMXpMNU5OamktNnBpZENKVmxZeFNBa0gyc2VlZ3lGeUVVV2p3ejZRZzBzeWYtUGtCWVFaRGtKOGJsUWFyUjRMdVJGVmViUTZ0bnQtVThmS0M1d3kydzFXMUhiWUZOWHRzUnVkcm03WWVtUDI2eVVNRzNPUEktLS1zV3VEUW1VblIzemNaVGZkcVBkc3ZyRmtES1JESWZfN3hsbDBLVGtIbHEyRjJOTTBiYjlDb281SG5RdERpX1pJZmIxa3pZd1BHTDZMV1hsazdhcENaQ3daWVBLNWNmbHkyWU84QzRuX2w4eDJkLXdkclBMWGNMRi1xZnRtX2RzZmNrNjBrNUtGenozZEJKV0otY2l1ZWM0S010Sm1JMklxUm50MVpJRnNTOGhEcTF3b0ItLXVTX3ZfZ3lMMVRxRklNWE80b1dUZktOV0l6d1NOUVM3UGdCYXdIMHVIemZDeFJ1bmh5enRMTEdMZEtBamZxc3d6R2dDMnV0THcyOVJoZWtLWVNyaElGWFVoNFFjZF9GOUxfNXZyc3pSaXpKekRUMGVkWlhSVkZNdTFsV29zQUs2YV8wUGVZbFI5cC1XMS03eWo3dGJveGZGdzMyd3o2VlNWamJrMHlIUnpRYmtwNkp6QlIwcm1QU3VlU1QtcHNCSWVwSGI3S0dHQjA0ZmJvLXk2N3VSRkxKTHZlcTJua1o3dDFIRGozQ2taVGduUmJ0S0xYRVNkb3RFY0toQ1ZXaXNrTDZabURLVWJJTkF1MXpLMlJhZkJhNzVDNlVPX2llVnAweTBJX1JnT3hEd1Z4QzVReS0zdVZkc2trcFo5VGduUGhXQWlURF9tQlBmeWhQN2NCbFZvUUhoY1lKYWVjQ21jQmtVcTd3cmx1emdEWEduUkFveUp6MXlwZWNjWC1IUnlqOEFFYXhxSkVUeGpWTFpNODBNS0xtRjNXZWt1dVMxSDIxLTFYUFcyaDBfSkE1OTg1cm9uWnBCSUtoaXptUU44YVNndjBIbFlmVi03cTl1Vi0wLXFrNXVQWnljQkRDYnpUZnlGaEdzWGdKU0tPSm5PYkU0QWktMW14NHpJY3FSRmNiWkt1cF80clc5Z2lFX1pfYjBpTWlMTGlBUHJ5dGo5T241ckx1MnJhY2UxUHFvb2VrZzFuWWxCRllTdzA0eHBWSjNGNURCOTBDMHh0SzAyMEtEakpRU1VCZW52dUpsZ3V4WVMwWnQ1N3dKcnVXdmFpYUlIalFBTmRjMU1lSVJEZjF1Z2EwZ1NwVjZPbEltMlY2aTVDMllfcmY1eHJITmVlWjdwU3A1X3c1UTk5YlU4RkdEMHZNbXE5azc1eTdsR3NTMVlwc2stY2RZd0pSek5oa3RPeW5GOFZBNlcxSjkzVmZsa2Q0NTFnMGRJM3dGd05kY0FqWG8xdUMzWF9zdU1JOUl2ZU9jcWFqWlVNcEFCMTZzbU9waHVpQXlBcjNTbTltMTJMMVBvbzVVVDE4V1lEbFl6eXhNYkRmWmRUX0I2R2lNUnpFYVlHSENyQjJoaUhsYXlDdlpCNW9lbkVTUG1rS1c0dFNmOXhRc0R4U2U1ZnR0UGh4enJ4UWxieEM1V2dINlBibzdYdFcxdUpMUEVzVnlwdGRjS2lPSHczQ0d4dXA1NnVNdjhlRW50SGRHdVFERmVfalk5TUJYZXNsdnMtQTdBVzg0VUFvWE0xd0RYUFo0SVZjdmozSWRpbTh1WUVDU0dXMHlPcUo2MEVBYk9nM2ZERW1wbEpNVTBuc2kzREZmbWlqNkVRZ25hdk4yVUN0Z1lKVUUtUVoxU3lHTEY3OVlIRXhFVFRUZ0RheHNIYnZCX2NibWFwNC0zaGhPS041OXlQUmN1ZldZTGtrMUhpODg2c3V6VWJZa2MxTkZRWlBGekdYV28yUUFvUXlCQm5DS01YT2QyZzBPS2RaSFBYRUtVR05FM3A2blo1WVFCMUx4dXJhTVJCSUNqV2lHN1E2cC1XdXRpNHFvNnRvUjgyQlFFZUtqSC1KV2t4a0NoZ2tFaXpUSjFGcjlHRFZ0c3duOUdFcTBKZjJ0aFhKWXZUTkdTY2tTVFEwUzFIa0NlcVNLOXAyN0p3NHl4RTlocmFVdHYzaXl4MEhFZmNnTlNLVTk0WmpFa0R5UFozUXNLUUlCa0xweHJReGRsZ1hSV2ptMEpJSWQ3WmRiT3I0YUZPN2ozZlM2a3EwQk5SVzFBVnhRWXpkLThFWkV3b2w0MFNyNmFfaG5tUUo4WWZvYlFoTDBhZFBfWUNaT3dBc0g3alc4U0lKbGV1b0hLX2hPc2Fha1hkTnJPaFNoQ2VVYjNpNUQxRmxkak12SWFEajJFN1dfUDJodmVna25PNkFhOFJlZ1JRN1dvQkVpdGU4OEszeVdPOWJkdmZ1NjFJaTBIRU1RUm5LQVBILU83RVpMVWdzTmd1ak5YRW1jRmdmRmhmU1Zudko4Vjd1UnNmbE9NcEZkTmZzNU1KUDdEcEF6R3Q0aGRQaG14ZlBseDdqTXh4cnpOQ19GS0tvRDBwcWdJdWtTVnlMZzdrbXkwOE9paTk1QUNMREZsTnlQZjNtaUVUMHRfaHBmWFZrckhCZDB1Qk5Banltb2J6WmF5bW05SFhLTTFVSUFJN21WQWdUZnVUYmQ3eEY5TjlDNUJTZXVyVDJtYnNaY0JtWFNfa3hZTWtSWjFkSkdjN3FwVFBSZUxOVm10UURBVzZWdTZUWlpHNDREMHdRNllKalItNlFiVnNSR2NReGtxR09KQ2MyYm44SEdvMnZCSG50TTdEZVM0RXdLUXh0bVduVXdITTNVT0ZHaWVOVmRvZDhzcllzaE9sM2tvZlN1YUxIUkZiRGdVQlZoaHBFV3dUejF1VlhOd2VVN003N0R1dGJZYTFiRXRJY0hneXJjQUJTVW41dlh4cEhhbVY1RTJHczhEeDhYTmlBaWdYREJfbmhFZEdWWkVqSmd1TDg5VXltR0c0X3Z0cVMtN3hGYmtJaFpPMXBEVHZTMm1KM04zNUduNGI2S1FWcUEyWEY5amJwRFF0VFY0bEgwZWhiLUFyeGtGMkJjbnA0RUdNZWs0eDRXN1RfNEdtNzlFb3V0TjJzSW9iSFhXYi14bURJbUVId3ZHZkFsYkc5ZFFLZ1pDT3Rrb3EzUHJvY0hEMVFUTElpNEpQYU0zc1VFNngwcy00NXR5cEFHQ3N2MDhralVkUW5GbUVTYUhTYzJjSE5CUEFFX2ZzMGU2bm1fakRLektON095RkV5Ymd1bHZ5RTRsb2ZxWkxfcnNxWFlPN3lvT2oxX2FLVHhGa2ptallGNWhiS2FjcDhCNWstRUZUWVZYMzMzWG9OelJreDRnOFNWZW0xVUNibE1QOTJxb3BLUklPaWNJQWpmN2dkS2hhQmZTaE04UUt6bDJBVjBVU3lwMkdrUFRja0NrWEtXUXhhbl9RLWhtZ2l0V2w5ZVpOR3BpUjVSUGxqR3VRaVRYNlJENGZKcUdEQWNMSnEwYjZYZGhva24zMHd0Tmktc2J0RUN6NC1HV1ZOZVVBYThETl9haFNaMXAwT1MwMkRkbGVKOG1ZcW5vYThEbF90ZGZEV0xiNDg4WVplU3JwUmV2WlBJWm5OQ1lQUngxTDdxMVVGcWhfajVrQ1N3Q0VWTEpDUFdzaXlKSzluXzU5c3lUaW9DemxyM2tuTVZ2bDBZSnFYdXF2eW95TUZrcDdGdVdBbWtfYUR4eURaYm1mRGNLNVFnM0c2YlVwVXhPQVJyamgteWtreVpfcmxsa1hLUjVrTnJJMFFKYkw5UHBiWFNtMzZVSTFNajB4alVael9IYmx1Z3J3c2lzRUtGcGw0T0k2bUY1cUNLZVAwWmFmaW1nblhxS0d0RW9wNU9kTHNGRXNoa3BSSWh4Wk02eTVta0RZM0FrX0c5N0FuLUxzaVVWdG5IN2NYNUJPbHZIMVktREFGdzhkQTBpOFhPbkJoWnZ4aFZqdXctbWtHWjBITURVS0RMWk5uUVR1RXNnVEpDT1RQOVc5R0xtaGNfMGRSS1UwQTQ0RFVRU0l4SmxEYzNYWmdYOV9XdWxMY08tdjJib3pvLUhLcTB3blN0dmlPSU9YQ21BRW9PWDFodWROaUJmdktBc2NYTnE1bGc1YmtaN3dDR0xSQWoxUjRSelhDMnVsaUkyZ3lpMTFHZU1VanpoU0h5Ylk4NG5vWGpDODNJcGFTX1FTYl9WUFEyeWhMWExVdnp4SHJ4YldpajQ1a1VEMWJEZUkxOHhhQmd4UzJ6VlRVMF9FcW1WaU9wbjRnTWczd2oxMW5tV0JYOHVHUHlkUENhV2dtbFJTVXNxVXVGQ0dYZ3RNUFN2R09XRkl0LV82YzFWdVlzMGJDNzl3QnhwYy1MdENkRXIweVM4NWZKQTE3aktoclFINUJLQXNneUhKbzFVU21FZGMtTDRweWpkMS1obnZUYzZxRHBXQmhSREhieV9DeXBfc28ycERfYk12eFZ1YnBDX3FIT0dlaVRLSkpTcHdmMC1OdFRLSnAyUzloUXNQYnhIeUFlQy11ZThIMXA0WlcwWVVyWGpJRDVoS2pKRzQ4b1E2THBsaEJTWlNCa0xpczRqNm5nV2ozN0dLZEFNN01jNlpKVFZRdEw4RXZjWWNTSUlEN0liMHAzXzBIQzRKX21NTEtjRlZWWVp4TjlvSkVPZWJLUFVzbndwelVUX05KbjQ4VVZrMGwzeGtDaFlEVDVmMENoNl9MSmhSSzY3ckI0dXk2WTY3N2ZKN3RjRGFfWWsxZlotcmVpSlBRNHhMTnNOZ05hU0FoQ2tqZE5Nb241bmlPUFNhQUtVcWdDbkhsZzN5bDhPOXFhcVk1aXk0TzFlS1hHcmY1THkxV0lNX1luNmcyeFg4aF9TZ3hlcTdRN2ZOYlhIT0Ztd1Ywdk04aXhhRmJZYnF0N2hHT1pjWnVQaFVOaVdDSF8xb0MyUHlIUE1IcEtWcWdaOUNYYkdQNmFhY3J0UmpRMkxZdUZNSnNWRVhlN1gxNm1xMDZpd0dLUWxsUlZxXzZoZGtqUUs2SVpDVTNzMXV3cFlGeHdaTW1CQVVCaG1lb2kzUVItQlhrYnc0RU9nYXllQTJkSUV6a2g3cXFOYmNXNlNBdnp2eXd4cUlQT1FTSWYtMVlSRnZfSDBpYXN2MmQ0R0kxNHpDWXUtXzMwT0hqYzYyX0VMLWg4V29pa2Z3cTNXZWZNMTduN2hGSmZzMFNWNTVHY2U3UTdDQkxxNEVkSTlXc0t1MDlxeWhNWHJwUlZPWTBrZzdsNjYxa281c0VsN1RxYzgxNWl6OU1wS3RZU1RlV1lsd3pnb011clJDNktNYmZEV2poUmlldGo0Z0RkSW9GaUQ0dHJGNjZvU2k0WTE2WkNxYkVPMWVKNGNseWZZWk8zbzBwSk1NQ0gybUlwTVZPMkRueGJSSURIOUxiSEU2VE1qQjYtZkw1a3d3WUVoSHI3UnNaMnFFYUdWMDdXcFkwMUdoTWpEZXE5dGI3Qm0xXzFvcWtsdVcwMjZRUng5Vzcxa0RwU0xPNkxia1RWS2xuMlB4VmdZa3F5V0pHNlZUbU81T21fRWxlblhQMmx0bV9VVXN4MXgwdkxWczR1ejlHV1VYTGZKbVlzZnViQXBwVF85anZyRDlkV2xWc3NKdUMwRlVVNWxOUVUyOEJWSXpycV9ublJVRUJjc3BLR2d1RmN0Mjk0V2xFVjZzNFdTSU5vNG8zaVM1RWtfX1FsZEp3c3JKT3ZQS2M0S05OM1F2cFJDa3hPQ2VwZGpZZEMtbVdfMGxNdWVoVzVmcGUzRnhFMGhjeHFrZmkyUXA1Mk5VYkVZVWpPV2JRZ3UySVVmX3ZBMWpIRW9UTzRQNS1vYTBrRHZaUmxPQldRbTMyS0g0RkhwYWpiNndLTWVIOU1VZ2ZlS0dBNWVJRDRxaWwxWURONkRMa1BKT3FkeU91UGdqMTQ2WWJkZEtQdmFDOF9YS2w5Nm5BV1lfMVo3ZTNKYW9NNzhZR2pMaEV3alFpdHlSOElLRTV1ZmFDZHdYMWNPMG5FQlRnYTZPNzFrSEJkMEpGLTQ5X2FPX2RoWWo0WmVLWVNxOVhkQ1NHNGQzSFNxVGVsT2ozX0tzUGp5dk5ScmkzY0loVmJVWHkwcVoyN1NqdlRRcHFEaW5yMDBra1Q2OC13SXMxcXJhazQtcjZoQUFUeTM4S2FrUFJWYy1WMUQxUVppR3hFYUdrbUg5bF9YT2hFOEtHREIzZFgxNVNOREptRi1PR1dKSlJZNWhqZmpFWVNEVUhmb1NHTElNei01Wk5hVUs5cm42cFBMcWZfcTc1dkZ1TWRISzZhcTl3eWUtQTdLTjZyS0xqMlNfclV3RHk4dnBlbFBBTktNTG5Td09mV2U2eXdFRmFJTDRVLS01Z0NvczJBbGd0OWE4QmRKOVpsUDBUSzZEb0RVY0JTbE9VTWNJNGZXb0lDYkhwc3FnS1d3MUJXc0xGTFU1UnNSZVF0ZHhmSFNZdWs4azFWUlNhQnZnSEh5Uk9NemJXYzhSWmJCVjlQc1doaEpMeVpMM3RldzJ0RkhaM2h2U1A2SUVidWpxSE0tYnRWSXFqb3BEOHFDMG90YkNERnNqdXV0bFdVekgxTXhNVFFGdk1KY1Rfa0swM3NOSVBNTnc1MVlrQm1fV0hiQTNZY1V6d3BPd1JNNnQ4YWFVV2diRUkyNm93Szlhd3BUTzJmVHVncjdzNTJoWTFBNVRpMXRobDM4TU84UGNfeTFyYWJBeEVsMGloTUw3VlRFWmxhUml2VW5JS09ORDdXSXE0U2RHbjZzbXJLWW1LUGRFNy1vZzJfMXVhWkJyblRScHNrd1FiZUVlM09tT0lRUjltb3ZmNkRCdlZlVGtieG4zTHgyM2hwUVRRYlpFSTRORFFHMnlzTXcwSnQ4OHl2dEo3NkpwSEFYbWhkZUpBNWI0QTBYb2JvSW80a1JGTjNlUWlCQlB1eTVsZU1qeEZnVVE0N3Y2M0pyNmtibXpfSEVTZHowOGhNeUozakN4Q3ViNWdJVGhtbVdkQ1lIUjZRYjRtWlowMjhIT0ZCNTl6MkY4QVVENXNwU2wyZmhKZHBtUl9aZ1BsaVBuUm9YNGVPU25Dc2ZLTW95X1YwNk1KRTl3VGZPSXU1ME40cEhoTE9qQXNUX3NCSHBfYWJMb0x1ekpJZXdtV29SRThVR2xWVENOX2hJQk1pdWI1V01lbDgwa09nbHJTNXRMZnNCdW1qTTZXUEladUpjRG1jWlozdXpEeFBkRWdHbFZydXE0ZmpfMFBoUF9uNS1FcEVtYTkzZDFaLURCTXU3Wk54QWYwS1ZBOXVJOXZ1WFNQRDJOVmRpMG5QRFFjbFRCRWhKYW8wM01uc1VGbkxBNVZqQlJnQVV2Y05Cd3ZlYzRfOE9WMDJLRVRxZ0hMZ2tzbkIxdU1jZ0cxYnVQWHF5cmJJelN3WGJiTFViOTFWSkZERl9ZNGFTWGhWR0kyUzFpdGdZOVlsYzl3aFlJYU9pQy1KcTNiRUZiVnZiZnJnemMwOUtiYl9ya214ZjFpWDVRczh0blYybHpSaVB1eExibGx6dmlEYkM4ZkpMRE44VHo4NExMa0lMZHNmdjBHaWtkRThSelU5cFNnMVU5ZURUT0RnVktDRmtzaXdJbEJ5MDRqd0d5NnNwb1BudUxweG53OWhKQnpUc0M5dVRUTmlZeUk0SmxpdWs4Z3ZpR0JTT2lMeGNiRVlXTGFpN2NNQUYtcnI4VTYya2hDYlZZVU1mVGhnQjg5aklmNlZSa3pVSGs0QXVSR1k1QnpraWxBcDhHeHg2M1RacnVXR3ZMa1FKek5wNS1PVGN3V3hEN2N1VlFULU5icVNZRmZYMnZVcEt2Unp0WjNxeTJOMTRIYmdIeUZMYnl6SVVoTXdiNkY2M3dwcnlIN0hfMHp3OGRfb0N3bWVCMVBTQVBUcFhiYjhRZjluQlRXbjFCWlBMbUNVc1ZCaUFYQV8zUWp2SWkwUXlrN3gtb3BGc1E3OFdJUVpadkhsb0NRNWI4UGd0bVdaNUFwVDhPc1dXQU1sYkFzdXRLdXZjTFkzbW9DeFZIOGxzclZxOHVXSjhlQzgxUV9uOG5YNGFqcnZiNm51M2ZXTXRDNmxFeWwzSW1JSHRHd3lvVVZOVW4xZWlBQVpnYzdiQUlnNlBoV1pxS25DMkFyU19lbEVheVFUd0ZTWWxrM2Zjdlo4Z3RMOHB5THY0YkpEalI5NUprM1g4NGJEek5uSndfY2o2Y2Fqb0F3WW9nc3RRZFRnd0pqTU1WaU1Fa2hraVE2SVRUU3lDNUJmOTBCa2VXbWZwM2N3Y3c2cThwMG5NZEdnMjNDc0p4VHNla18zbFotRS1KcHZESHJnVUV4d3g1Z3lCVy1STjdrX2xnaGd3OUw3QUNTbHdGb2pHVzlZSzA4T0J3Tjg4ZEQwLVlmMkZSRmFnaFVQY0RfWXhmaC1qNDkyaGY1SnE1WWtyOGJMZENiZjdBTGgyeUp6UTRoUGREMDdnNW1uNThnT3ZMUWo4Z2tvTTBfMHVGOHBRaHpqenRjVlRaM2NBNkZobEI2a0Zkdk9OQXZVLXI5YkpFb2NOaW5fRTJmb1B4VUxqOVdEdGxaX3N2bWtEVzBjR05fRWRlR1dKLXhLcTdWNDRzck5vd0lCOEprZHE4dUhZXzFadVg3bWV6MHNYc0lNSEFFSWhkSnBJelpYQzVjYW9lTDRfalVxelB3dzJzMG1IU29CSlpQNjNWODhFQVpMVkdtaklwaC1PTkhQeU9QemFlQ21xajFlTVFaODdJSGNhYm1yUGNaWDFITTVvRi1meTZ5RFVzdUJyRkx1dmRyX0VJQ21TM0sxWEZmWVhsMkZCU1ZsRGNpUDJ0YVF1RzR0dHhjaWhoRWpERDVDcEZ4S2dha0lRSWc3VVFBTy1rUTN3THZHdW5CcG4wVy04eGpWRFBoU28zUUNOc29sNF9zWnFqVTBoeEVNTVo3YkVxTzNSVDNTVW1OM3RjdG9LWTBySzBxZmR1bk5iSXNjdG5TcUVPYzg3dWd4VTBXNHlQYjBNOEoyQUwySkV0bXlRZmN5RTBDalkzVjVZMjNlN19UVV83bEk5alBTbnhvVi0wdUhCRjZ0Z2xYN3p1akdJSG82MU5CMHo2MHpXZ01hYklqd0Rha3dPYXV2Uy1yX2RqbEZpeUUyZlJvQnNPNDN5WlI1OGJqcHhpRHJxOWdnMEtJcktBQ0gtWjliTUdxeFBIbHVrb1FGeHAtMWszQjdndE5GdGh4dEJqMng5Q1FBVUJwMFNZYXRhUmgwVlBPRGptMWhLd2FUTnUyNDlxZW0tbERiNTRhNFplaGZqVExkS1RoalFiMktwY2FCbVg4ekpQbnRhVlA2MXdDeVRGVDBSN2RIVHloZUhfS0NYbHA0WDN0ekdoRTg5VDVVWjVxVEZJWmNDR2I4YzM1c0pjYnh5bWZ0aUJJd05sUFRlbkNid3dfQXlOUWhreG95Wk1iai1lQ3NBN1M4V3FaUEp6ZVozWE5iV0ZJeS13S3hFMnVyTTJKRXd4eExXRllwOFQ1cFBQQVF1NG1NT0k3SDlfNzRTcWpMRFpCU1Myd3dUdU1YZW1aSDJuWVI0WmdCUF94UkZENzYyM204ZzRuLUdNNGhibVZPMW1LTllJbDlHdzljbkpQOHpSSWlNbUppWEdXTjktbjRPVHFRWExFVnlKbnlUQ0RCMzFTSFctTThyeUJMemEtOUxOdFZhUzVTWkM1UG1vem9EMFZyY2hFVEZmelhwREJfZGYwNk1aYS1icEpBQklTVWJidi1hM0Zobm9JUU0yRW1uT1N2Rkw1ZFdDRlZMcXAwREJOZEVOS0FiQmJaNGdaaGNEREVoSVQwQzh4dWJ5MjN1MW55ZlowRld0WXFoTTh1TS0xVzVOTlNLZGkwVFVhQ2d5OHhBdEh5Wk9YeWgzVFRMVTh2ME1rbjFRRjh5ODRsOVJlejE5VTR5Z2JqX01CVUJreGYtNnhpSFRVQkNpQmN1UnoxM1pSTkVMNUFzTUZLalQ3Y25zRDJxNS1fdDk4dEZ3SmNQejBTLVctbzFtVnBRSkFjZWZ1ZXBRcUdvVzdLNWIzMWFCVHUwWVc3MTZCeW1pSVEwTU5VdC1Cbnc0VTZtdG9wWWJVRjExVXhSSHl2R050dVVUMlp1MDFJSWlKTVRvYmxoZXlYQkFraEVUaDJTXy1Cckc4cG5oZWFZaE94a2wwZE1nZy1ISlJ6V0RXSHJTZ2tUN2plaThNNnhOY0Nwc19veC1kNkdsX1FwYnRkRGZWaGQ3clRaTzhCNTFQSVN3Yk9aYUhkZHotRlhUZmd1c3p6S0RwZmtSWjN0T010VFJ0U1ZWR2t3eG8wRWdfQW9iRVJSNnBBblRfN1hZQmpFWl9BSVVwQkhmYldjZENyUkN5YnR4b2VUU0RvS0twblJkV0E3cnpiLUtDQmVzNG9mdWhicnNldEdWXy1rT0dLc2FuT0lPbkNPQWdHc2VFb19NTnBvZVpjWmd5QlRlaHFmNXlCQ3FZN2FmM2E2Q0F0V2hfSE1IVzl4cGk1TVlZVk9sRVBWWHZHTFp4bi1xS2hzUDVwM0g4a0VHam10d21CWGFuQVhkNE1HemZtWnA2UkZ2d0VIaFJHNFJQQkZYSkZld3laMW1oSzZZVDZXYnpuUGloTC1PTjJPVnJEc25CSWdEUGVtclpnaVJIVWdnMkk0MXNnX1RMWTQ2N2NYUm1JZUc4NWpUTmRieEhkRkt5UWhNS045UUVBYXhDTGJsaF9FZFF1LWJtcnFfNVZoRmIwSDlocF93S0M2bFlOM3BFR3ZsajN5QzNIYU1LTW8xSVlBTkROcmhGM096U2VHUS1SWmZHeFQtZTNwdmRzc2ROTHE5XzNrdWdGZnB5ck1GY01iMkl5MFk1ajN2bF9vNTFvLVdiYUN1Wl9KZEZfb19JZV9zZ1ZnTUhoTVA0elIzRlBEVjVjVUR0bEtWWldSa25XMTRaZ1hnbFNRRG5kSG5lbmpqR1N0WkZnelh6c0FqX2xibm5BXzZnS2ktZHQ5SXk4aW92cFN1SzhTMmMxRFdqU2xIQ1FMS2tCdWR0REI4RFRaYjZneHJCZ0piNEpFUWp1LV9mUXlPR1NOellNZ01ISHFiVTVVbmpxOFVlQkFlclNnQnEzTWRza0xRNjlRVS04clRZbGszVEVLeFQzS3hhTUx6MmxWTkZSMzRkUDl5Zm9HMnZvOW9PS1VEb3VUaXRwNkdhV29Vdm5jWkdDME52bktJaUIzc1NiQ3pOWFdWbFpDWDhWdFhRQnB4NV9USDNhYi14bUJOUnVQMUZ4dlExNERsanZHQVBOM19DcHhxaHAwTmxzbk9xNzlqYmV0TmtqVHVrUTFZLVVhS1lUVFZOaTlQV21CbWJJTGx6X1FfQ21lSml1M1BwVVUyM28yNHlkR0JFTzZNZFg3aldMdHp5c1hxSVJyV1JUS0g1dG1rT3VwNlQzck03UGotb0NNMURacGZHdFUycU9aVW5hZF9TNGR2V3RBT0EzMVVsLU1DQjlLLUpHZEhyU1NKS0xoODNqM2d1ZDdoTUswVFJmYzVXLWdaZzdiT2xUc2EwcTB5anVKTzAxYmZQdjdQTjN2cTRkT1RabWluNnBJMzJSbzBTQU5NZzlBRkdvR1g3TElaR0Y5bVRMZkZGbkJTUlctaW5taW0yRW1NR1piQV9hNUdvTWxOamhmV2JvLW5aNHZubkI0M1NjZlNwZnI2LWRvRzd2VUZzMHlPUURuM0VvZF9ZcHBwUUwtLWtKR3VlYndlTVk4ZmdtVy14NktjRENjSEl6NU04MzhROC1KTEpPNzVLS0ZqREZGa3JtTGZfTGF5ZTJuekpKVGxhN0NnMUMyWS1kMFJGZnd3ODRHb1JjaGpVS0RPQnlFUDVlNzRpcnVSc2hjQjl4QVUweFpyZlIydmdQM2gwbG9UYjJ5UG9wekVwaXV3N01XZDA0eGhsMWhJUm1haXloRFMxc3R3WFh3aDN5SlNuWE5NMngwdnY5bGpQTmRDTzBiQ1lyZVQ1SXY3eFp0WEl1VW5jaWI3eldUQWZNZHM2cXF6Unp6Wkx5YXFTT0JrQkxJLW82R05SMm9PX3F6dTZteG5tMlJGOUlMcEdxYnRnZHhYTTdScVNkNVBEa1RfVjhrVzdOOXlfTUJuc2RpV05uelo3WndPNldrUlNvbkJPc0licVFVS3NXR1dUZ1E4ajE4dy1hd3hnWVJNQlhrY3lEakt5S0piMjZrWjhnRXNlcVQtM3RPTHdFeGM5cjh1MEtLT1M5YlROZDF3YTRFTWZHMEhFeE1SdmdqQ2N5QTlLa1pnU3Y3eTlNRm1BS2k1M3FXNnVvRHRfX1Bwa0lFLVpqUGhLLTdSa3Y1TmJUQnI1bmctTlR6ekFHc2s2enVPdnBpU05JSWxBRXNlUUJERWNES0c0M1Fsa0N0X3g0VmJ2QW9kQk9lTVJpZWNMeTVtLXo2SVZyME9xX0Jnek16ZW85Wl9xZFhWdFZobTU5ZkhDek1rcEM5WEN2dTVXaVU5UzhsV3Y0VmM1STZXa294QW9vZ081QXJFVVV4T3JsMzlma0ZpR2FvUmNBbWM0dG81anhUUjhuWVJXQ2tFdUQ1dEoxcFFUNkhpaW9XMk1OTXR0OExMTTFpeUMwejI4bWFlcmdBZUxGQ3pTODZ6QnJybXVTWFJEQlhhaW9DWGM3VkoxSEtmSUFYcDY2ZEZ3RjhRUkdUOE9LMm55dlZIMzlvRWhSX2M2T1NiRzJvYkxTOXdWM2RFSUFiY0RhR3hjVUpCU1JXeTdUR0ZhcWdhemlwRVRnejF0NThlNUZhS1AyUnoxMHV3LVRHSWN3VVJtRXhlSzVnbDZJWWdMVThKYmVNdWtpbTM4dVFXaklVQXEwOWhva3RsRFNueG8zRFg2STJjdFYtRk9xYk9rX1dLRURHRG9aRG9neG84UFNELUJWeGJrQldRZEwtTUNENUpzblBGRjZhLV9BdFBaWktKYnZoM0t5bWQwNXVfbk9qTURUdXFKU0xuNUV4MjFPbXAzQW9WZlpNYVlTV1hzaXpOWU10cEVReEMwbWp4aDFFLTNmRm5uOE9GdzVnTXFXNXN5d0ZHRklYcUF5MFlmc0Fsb0ZBTkstRVZvVmpCbjY0b0Q5X1NsNVBwZmxFZVlaSFFRS09IRmxWazVwdUhlZHdpckNfZGhkdGp2TnV2ZlNSb1BLU0VJWGxnV2owRHRrRkFiaXJkd1FNTFBUc21CT2pOYnhSWFkzVG9Qd0RSZGo3eC03VVJxY2Ftbjh2VW9UT1MxYWE4WVRMNm5FNVhsVHpuOW01MEh6ek1Rb2tnemcxQlFLSjRsMFJkbWw1a1RiX2tTRm5XY0hobHp5UGt3RUxvZnZfYnlBN0lSXzV0d21LLUZGcUVsYnE5WW1IaXNrR1BWMlpHTDFmTDFGaU1RSmtxLXNzeFlTNjZJRVZ3b1pCaGw4dUZJbnVidXhFeGJaSEpTX2xQY0pLTnQzcExWazJJSzJpc2duVFgwTnlJRWNzMG9pdDlfQVRERUJ5OHZwWTYyTjIxYk9la1lJM1o1Q0pleFFpVTc5VU1wektndTJvTGlaWnBaeXJ4TnVMa3BWSzJpT2toanNaN3gzNDhRdjBSUjdRN3p1aWM4b2hnbWYySUs5cjltOW93MTg4MlpRNFlETTdlOGlxc0t3dkZkOWZuOERlcWl2cmROQUhRcjFlQTZnN3BVSkpZZTNiUDJKLWpGSnN1azQwWXBFUXZVdGFaZjF0cUpPQlMtWlhvOE00aGEwUE5KTWx0bFhmZGJub2x6aHRnYVF5blR3WHJBRTBSZmtnWjlMaHFtenI3ay16TWEyM0t3UHdncDJmUGgzSmV0Z202Nkp4eHBnVjQ2dVl3UTVwSUFibll3MDFOTUxFTXlQaUNySlFFRWtwaXo4WG9hOGtJMkdRdkh3b1pTYlMtNzFZcHMzQ2oyLVZkRTBNaV8zUnRJUEZyaVVTUERfS2cxQ25pQlduN0IzS1pUYjd1MFFwOXl0VE1TdDNRbUNwcnR4YlktVWFwWEtESUYwYVVCN1RPaDRuN2lFZ0pQYzV5M1A1LVZkQ1VxUHJKS2VwckUxN3AzMmFyWjE4VFFwZE5rRHdXRWJWZFlMZDNvc2tTdkhCMHBmbTFablpMZzNpSGo3SmxFX0VsT0RIOVQ4MXRBS3ZyUFlzZUJsWnZQbEdUbDdRN29XN0tSZ21zVDJHMmlqOW11RlVEWEoyLU9ycFhHTWFURGxpdGNhcmpXR0tjMXFJRWhzQ0IybjI3LUlDX2FnbDdHbG4xUkdCRC02bEZGQjFuTVBWcHJpVGljQjA3THJZblNHSTVRdzFpY0pYNnV1TzYyOHRTMEh6Z0llUEdRVzhPMEtyR0xEZkktX2ozQkphbEN1eEpMeW5sdmE4MDVaWFZ3RUdCcEcyaGFOSlVleXhJeWFSamM2SGdOZzNHXzNIbFItWXhiUjBfSmtEODJwczhfd1VmZTBGOW4yYkUzWEVNeEd1bm9rbWdWbTdxQ3I0TzNxQk1HZ0dvN3ExNFRVTGhndk9GeXVZU3BKdkJ2a290NVptZS02SC1idVYySlVjNENQYUN6Y0pFSnB6QlNmTnk3eEFlQmNvbEN4Q0w2MzZDZS0yeUFGVTFFdjJ0NkN1U1BHZUlyY0RrRlUzT2RWOWxvRVlJaG5nNUdEdDdXUjN1RDJsRkh0M1dWLS1ieHkwSFU4YkZmT0c4b0hoU25NN1hsOWtGR1ROWUVxUndIUjk4eENYeXVlS1ZEMHVlN0ZPNnotY3dxV1NxX3BFb0ZUX0V4OFlHU0EtS1k4N1RCRFY1ODlYSEdMYW05bm43RXJybTdNc1p5Znp4V0NBb0U4YkktX0hRN3dTLVVTc3JuZkh0eVJCVkRMcHRSUDVXWDhTSW5jekUwbTFsZFdRUFRZdDFZTVdld1M1Wk5GWll0SFFVSU9FUzNRVlZ5dWlrcXZQczBQWE5Db1p1ZUJoVVViZlVab0E1WFpDTXFYWVdsQnBUMzRVWkRTV3RxUnRVcXhjZlk5YmpvNzZWNjRfSFAxUHJ4V2NQMFZFVi1QVmhxTE55VmRZd0VsRTB5YnlyWlNsRjRwVlM4VTdsd1VlS01UMnpHNWVDLUktakxpUEU5S1M0eWU5WEdtZjlVZEZjd1V3cXBiMjl0cVFFdXRUNFRmUU54elM1dzFqblUySF9BVmxvNm5LZGJiLWt5RjB5WGZyRXB4VHJtR1VSZTRqMEVzMHBXbU0xOVZxY05yeDJDczh0UDlGTlFxNlptQnJ1QVY5ajE0SlpOdUhvY1ozMmU3cTdsN2tfcWlseEtDN1hjR3lRS3U0YlpXdS1qWUEzdm5OSDVORnAyaEd4aWFLVmRka1pDQVlTUnBqMHVNZ1FuVGNEUkppTTJoV1piaGY0OXBUaUVwak90dmhIbHV0WDdYdmpnTDVZcWtVRzNBbUZVelZIOWs1QkFpUXo2VUtwVVJjUFVNUnFPTG5fbkpMd0VsY2xKUE0xYldZdEhZNHNTdzl0OTMzSjZxdzdENFdNRGJRLVI0QlJubkxwNUZZRUtSY2Z1cHVKWWtxV29xd3dQUzc4b1E1UmZfSF9VbVlBZEFOUXhsLVU0MUw5RTE1TEZqaFBsMUZObFhNLUp5ZVNJNjhlbUJ1NGNWY1l4d0oyMGd6Y2NuSWs5UEtjdXdUWE1IUjVIMmNtZENxRnVBY3lYUlJCaGhGRVBfNjFmbmxnRjMxMFZSdS02c3JmOVhnTGFuMEdtaVNZSC1UaVpmcUFrUjItRVlvdWxFUG9UWUw5OUhTekcwQTBveXhpc2YyaER3Z1NxNDVpbjJaTU9BQnRrNGpGT2ZKQ2kyOVZxMkV5YXVOQmRodkFQeUVzVHJpcV9ydHZPN1phUUs1Ulc3QndPZ0RsY3k5b0ROcmVfRG5mZm9jRUNmc3hMVndab0Z0Sm02eUpoNmU5SDVTOFdMcmF3MEhDTklaR2QyaWNTUTJEMG5oMjh6b3JSY1lfanpIYjBwX0VIZk1iNjhxa1hoQmREVE80ZVQxeGNtRmZuUXRCQnRCMVJYaEd6cW1MRlhTUXJRRWxHWFY0czZxNWFYRlJQNkljdGowQk02VkxHWXVpOUdZb3YxZEVrWVRaS3Y0QUtnQndySWRGazl4N0hOT29YRm8yRlgzY0hWTUpWU0hzck4xY00wekN5SVNGdDNkaHB4TnVsVHY5TkdfQWZmUUg4X3NQa05Ua1R6clcyRlM1RkZpTjVrQXJLeUZRRGlWNEZHZTRxWE5WbFhfOURtLW1Hdk03Q2lPWDg2Q3Z1OEg2c2JEckxFR2VxdVJFSHdxaE9DYnR1VDljczNIYlBsbDlvODhxTkw4TV9CSzc3aUh2a0lSQUc2Qkl3Qkt5ZFo1QUNpVnh0NVhIZ0tEUE05a1VaMTdLM3FwYXFUblk1YWw1QjF3bXVYMkwwSDVGckxxQjJTTFBPUE9zcU1RTlNidGExQXBkai1KMm0ybzFWY1JPaGhWeVJza29iLVNOUDd5WGJrbGlUOWJTSHl5YzFvbzFXcTZKYnNZd2hwdVI5aS1YX1cwYkc5M0hyYS10c2pvYmZPYjFBeW5sRXotRGpqZXl1eEt1UGVtLXVvRVlTWkZfbXRsd1JxbVNFSkFwWmlxQms5VHFTZW04LVBCZWxRR000MVhBOWtFeHc3cm41anROODZEdTdUX3JvRnRTWGxpakFQUm44ZTI4XzcyNEwyTWtrN3FPREpLMkg4Mzdvc3J5bjNXRWE5MW80OTJuTS1BcGNTZ0pfUUEzbURqUTJtaHZNVElPakh5TFRCZlBjaW4tby1UQzRhc28wdmpJUEhLZ3pUeE5oWnpYNHMySjFSRF9ldW91cHhfNXhocDdCTDZSTWt4eWVMd0o3Y2VwZFhDVmNmdzdzRDEwQnlyVGVtSnVoT2oxaWhrc1lVUmdEZFI4M3pweFl1Sk11a0ZqbjlxbEQ2a3c5YndNWnRpU2h4QjFZUHNuV1daV3U0TXFsVTg3SldZQzlEMzFUdXhiNFltYndsd1RsQTV6dFBTS3diTk1fYUI4aXZVUUhUazBPdFFwcndXMTlCdU9FbjFtWnpBYnJ0WkUyZ3NFQ2w3TTREWjZWR29nMGtza3gwSUlDVks3WkxEQmZRYXhIWmxFOFk2SGFCS0JrekhKSHE3MUNfcnMwcEo0UWZRV1NiNGdkRFpIeVpWY3JaNktPbEZsQTBma25LdEN4YnpjM3U2TUM5enFXa1ZYWWZZeWVvM1JSNUg3UVJZaUJqM1R6SjJVMVF4U1VqQjZyU19XeW9vWlhnNHNyeG5QRWdKak01TTdfMC1yY3NWVlVVdVNzT2RXMXFybjRlSy1Kd3Q0elkwUHhLYU5wZzRkMTFLUURIVXJkRjdPbnd4UmJ0NktLSFlGYW03UGh0ZVozV0dGbnBIbktzdHJYOVk2bEREYjBTLW5KQ3o4ODF5cUhUSmZ5YkhfRWFxS3R0ZU5ub3dDc190Nkt4NTVBS3o4c2VaU1psOXJnb0k1V0FrVkR5YmlfSlFFdTJnZnp0YzN0M1hCMnlTVDg4bl9BcDJNbU80X0V4QXBoVEpfNzdrYmJvWkl1Yll2ejA2Sjh5ZjR5Mk1yXzgySlFLVVBQYWhuNEozejR3eS16d2EtaDFLRkkyZThQTDZzODF3YmZ1QndrNlBHNFItZWg4UVhybEJrSXVqMkJ4eGU4VUZ3VUZONW9kbzY4VC1SWTF0bVdPRlZndnpDUkJKc1Zjb3htLU1CTGZsdW5XbTBVdDRvd0F1MlRKQ3lUaTRpWDhIM3E0X1lQTy1zMXBiQnRRaU0wQU01azVFNkdoZlc3MS1lQjJ2cHMtMjRORzE5R2gzTEhvTzNlelJtWmhwX3k3QXYxV0I5OURrbmJ6NXZ6dGxwcW92Y2hNNWRDOFNQalFkMDBDRW5NRmtwaVQ3SDZZTmFKVG5BcnVoanhTU2RKLXUxSmdGSE1ObzJpNEtfR0xxY1BlSGlIaTlPZDM5S2NGdVNQeHAxOV9wc0Z5bHRzWVp5cXhoNldJSG55bkRvdEpiOHd4dFU0bk1FMWFvazFZNk9yc1FUeGFtNnBFQnludFljbzFoLUlhanZHSGliWkV2UGdLNjgyc2RoZ295RjJ5OG1na2JTNWxHVDd6U2tYWm0yeUZwOGk0X0tVUnlYWUtqUndFZWdKTmktQ0gxWWs3ZHgwbExOaElOVzJEWkdyN3RFd1dOd2tFMzFHdWwtaXZWZzdGMTNMN2xXNW9OWTk1WXFXQlh0RzBsRHVoUlduSHg5dTNWV0twSDFmT0xDcnVIS1VXdzM3MmhtX21KS3U5UW1tQjNrWDF3SURXSkQ0SnFfeWlaekMxWEdIOEFzRmJfOFhtTGo3YW1aUmRwRFRRSmV3WlE2NXFJem44VEx0ekFhTUktUUlQZXJDSEZmeDFYWW81ZUpWdHc4MWphVHFRQWJCLVZ5X3ZXMG4zNXhUVklEOGdJUlpYakhRVEg3YTgtaDY3ZVFPdUNtS00yR2NZQjlFSmNRLVRPdUd5ck5Cd0lBckNxSGxDSzF3SjlPZjFYMjQ2cjY3dnd6MkJCQUdRWWp5dF9yZ09PcFFadGthV0pMd25ncXEwRE1pYWt5cE5LSlVJbEViX3ZkUGp6SFFKMV9IVzlMSFB2UWVHUmVJRTY2YzEyWlBBTm5tcndDaXR4M3hzcWNJZVd2d0Vya0ZzcWMteUlZbFd0V1Y4ejVmdklMY2JvSWRxVTJ4c3RqR0lvZDhudEp3RVRMeDJJQTZ6TUZHZ2E1UDZkcVhiMm85TUtxT3U3Z3UxYzBUaGtjVzB1QUFSb1F5ZzhDcnMzX0VfcC1YRXpCZGVWNzBIWUhXNk5CaV91OUVfLWVKVm13Vl9RcmJxanM4bEJxeEhsR1ZyUHVIbjd0ZU1ncXk5cjY4b0c4RVZRRFZUV0tXYWZ1U3Q1bHJpWXlTMlk5QnFqbXduUlBFR3lqTzJtLXVNRTRHQU84d0s2eFZVeWF1emlRQ0FyLnN4blQ5QmJTbklGT0RKQ1Y4WGR3RXc" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/BackupKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/BackupKey-example.json new file mode 100644 index 000000000000..2e7b6a954bf3 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/BackupKey-example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testkey", + "api-version": "7.1" + }, + "responses": { + "200": { + "body": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLllNSVBfTXJRcTQ2X2ZwRExfSDNSSkpzSUotM05oeUJkMXlrOWJCS05JOGdnTjMxYWg2cWVoY1BISExnSnJ4OGprQkxMWFBxcDVmMXpsaWxfclVrLUtrT3J5YzhaSTljc3NNNV9TeTN4cEk0Wnk2V0ljNWNqUFd1R0NDbUJwQXlydEdPVnpoalF4bzNyVFcxRFNxZ1pVdnI4VEpseTJQS3J2aUlfUmduRWQ2LVJWS3V1Vk40ZWZWYUs5WFZUbW4xdmZ5Z3pwVHJfVFdDOVBGbXpoT0p6Z1U5OF85X25WcldWSE5TMXVMWEpYbldoQU9mUll0VlJORVFJRU5lTGMtZzNjTXJLOTFzNk5XeE5xZkZfR0w2UHg2cVhHMldXQ09nMzU3ZkJnT1ZTdERLaVZINk4xTWVkUTVwaWFkeHhUVDZMSFpva0I0eDFKbEFJZkxfYlU2OVBWdy5GOVFiM3RWbE1LcHJDS0stWUVpODJ3LlQwTVFpYXV3MGw5TWJfRFdEY1hvbzFqTjZJWXU1OVk3U0VMMm1ndFUweDNYTDl5VHNqZUY0Y2I0NExBaF9vUDdnbUgzbjdKLVZEX3hKN2hXY01XNnlTNDlFX005aXlndDlTQ2w5ZjRTdWtpM0NZdkwwUUVSVFlLSW1qMi1BRkRMWkl3Tm1HYmE4RzhheFBxR2NOS3NSZ0daZ1lUVG9pWUxxQnJ5cmJ2TEp1ZENxZ2plUWRpNU1tdHlQRnBhZ0hwSHZLa3VjRkdwLVhtSjFLYk8yQTJRT1dRVFFaOUNlcmVCcXJDbjI0SXdhUXJVQzRyTkQydzBVQTFUY3dFZXVWQkdFTGRKWm9zWHM2Q0dEZmpaSHFjdnB6NzRKd3g1T0VpcV9EUHM5VEtya01ob3djRXBsWjhaSk1jTlFSZnU5Sjg5ZDdZWGdHZEI1aWtKenA1WlY4OXcxMmIwekNITllKamdkZEhTNjJmalZlYUUxT09QXzd5Zlg1dEpiNmQ1QVhpZ3ItSkozbGI3Y2JhOXE2NHBsYmlhck1LemFiNUhtMkxNRnVLQnI1TmFrbzVQMDBoUUJnR2M2aXBJSzhNT2NLc2RhQjJGcjUwX1ViNnJEUzA4NnUzNy1DSHRGRnF5LTFBaGlDaXhRakNNTF9rWGtJMHZEYmJqRi1feGtNZGFCVi1BdTc5TzZ6V2pzRGVlV0t0VXZWUW5CMGM0Qnk3SVdDTGVWdzIyaTA5WWk3MnpCcWZPRjRyTmd4VTNrSjdfLTVib1dteVlXNndNOGVzTjR4R1kzUGhVNHlLRV91RGc2dk5Od3Q1c2NXWW9TMHh4NlBDb3M4S0R0Y3ItVXlwUTkydGhVX0ZYZ3E5U3RUWXEyWWdWV0dQbnM1Q0RMT0RBSi1sMTFJNklpdGxQN0hoeUxvMzlqNzdpV2ZUS0RnTDVrcDdEOUUzX3FkUFprdGpWUER1M1pRY1Q3MzlOMnp6XzFrWHJEb20tNlBQcXdWUzZtUXpBVW1xaXhTaXZjcWJxalpJRnRPbGxLRkE2cWVyaDJlU0FZelRNU0N1d0p4REJSQjUtbjBNUWxJSGpDMTdkTFpoVnFEMVNiNlBycV95OXN2Mml2V3E5TGE5R2ZHbEhBNlZZM1QzUWRTQ3VrWVJqWFhxLUItTm5WZGhGTVZhbFZ2b3NySmZuSEZhWGZMaTBnczVVOUt1NHlqRDdRb1cxeVIxSVk5T3JaNHFSUXdrcG5tOU8ycnJIMXBtX1hTekxRVDRrWmNLYnVneHNvWXRsRE9TaW9iS0RYdTFNdENxdkRudnh6OEZ3MUdwTXJCdUxrVlFEVmVlUDJqNFp3TGxPbkxUTmk4YlNjTm1fN3ZUc1RQbTRJRDltanBXSThCYXA4M1RLaTNkelAxazFpM0dncnIxSEpVQU96Q0NjUTRnaWxES1o4UkVsUWUyMUJBcUo3eUVublZsdWN5RzZBV2E3dmlZWXV4eEJIa0RsN1hHZHZYMGpJMjZyd2NTX0ZIMnlOaWFmZDN3SkkxMzQyWEF2VDdDUWVoOGRaZWRKU3FYUUdqQjVCSGF5Vl9vZnplVXBfOEhqRkRoS1VkcmNJNGkwa0ZwcEhkUFhNQXUxMjh3RHUyTG5VenlNNEpad1NJdW1fbmpiUTNJU1R5bUVMTngzd3QyV1NFT2Q3QUt5S3lCNEJzU3NkUE1HZXdLSTFnc2otSENFb05Cd3hQQkF2VnFDSUkzbGY5NG0tRU04LVh6TnRCVXFpT3Y5ZERCa2d2ekptSTlrMk9fVmpjbUZrbkdKb2kxVnpZcGlRVTRYbElaempDd3NDRHFrYWh1YmNxWFdyMDhVdFBtV0hGRXk0Q0tvclZMN1VIaVhsVnJPR1VHdFN2dWN3S2RjS1RPeldsUngtRGNGMExDek1kR1p3Y2czZWk1bWl0bFliRjJVbGJOMmJaU0NQWDljOWxFU2RBUUhxUEVsNXJhVDY3aDlWeGxPc3doYW54SkZvNGVuRENaYWZObURGRzJMYTY5RXFCVjZLTHowXzR1S1pDNW14YXZEazZXS3lmb0ROeXFzdVZMdG83WXNqUk4xNTJYMDVYSEhuRVN6NG5lM2MwandXYXo2MFpJR0Q1TUhNUUhQeTdPNFdnYWthVnNKZU9mYUNza3diYjQ5cV9tQnNYME5mWlBjcWFiRFhoWjdCWUxROVhFUkdibndkM0pEQmgtX1RUN2s2WERpY0tUblZQdWVGN3dzVl80aE9HUkpkVEk2UFRmV2o1dWY4dTdxRU9BdUt5NmV1Vk1LeTk3TVdLT1Q4LVpRbDBoSWowcmJWR1pILVI0cnFIMXZfVmdRUGRpLXFXb3FXcWt5MGFaSzNDTkEzUXhXZnRMR3AwcUVXcHU2T1EtQ2hONy12eE4wdFVlZGREWlF5V1d0d3g2VFcxS2hDQldaR2pabTlBQzY4YlUyQnVOTUU1NW9VV0dsbmNOOUVuRnpnTm1RTVR1SzV2VGd3WkJITWpmUXpsSUdfeWZ3QXVtSHljSzVPT092eDk1SGM3d0RBRDJXMVdSb2h5MDV5TFJkbEJ2XzREUXJyTWthZEVwZjB1dHZod1V3ZXZSNU1jVkV5Yk93VUw2Z2Y5a3JDNEw0YlR1bUJRbG9Ccng1aDNuTHhZdzkwcmlqbG5LajVZYkthZWpyTXdiSW15Ri1xVk5NbWpTd2I1MlN0SjB3T0czeE9HZkJRRHhQWHJtSXhoMERSOEdzSzBkeS0xSElJZWo1LW9STWRfSjlhVkt6MFk0d3g2VjIzaC1qUDNxMjRKYmF3dndsQTZyVjVpVUZkaDZKUXJpTU5DLV9hRF91X181VTd0OENIN1pWQ3VQM25JaTV4N2dtcWFsSzNlZ0htM3BkYl9sb3dYRTRaRUJETHZ0a2lobC13LVBGc3VZb1VKSUZWcUZ2VnM1RW5TU01XMFBJWE9TZlZNWW1KWmVrYmlHX1FqeGtCMjNCaHpZclNqQ3oxcW5TTXg5a3ZicDlRaDFuZFJYSkpJUFUyamVIdUxCNE9nVzNoenluQ2FxQXZQRXVHMlhuS3B4WGZ4QUtOeldpTElOLTBsUTRfUXQ0dHctZmphWVJVVjVLVWpyYlZnazI1MDZIUG1ZVEdWUVdRX203Z1NBU1BaajZEYklua3U3SzhFWnI2b3d1SDI1M1hxazlrSWwyTE1CcHZqT2tOTWFRTXhLcjItMllkUEV5LS1mTUFQTHBfVU15MnhqbEtMS2s3blhJdV9IMXZSbmdfVlVyVkhuZUdqRmFuODdRRU9SU1Y3clRBcHJPMmZUMmpfOWhoNkptdFlrUXFnRzg2WXlKa3NValdzM3hwZGk2TlBGRUxqQWd5T0ZDLTRrTWdLbGdJM2lUSElCV1Ezamp0U2UwR2N0MUs3QnBCSlJySUFGLTFVQjZKVDZjSjI4Z01zd0k5OGt1ZDVob1hZbVQ1bEEtWmFELUk4ZE0wcUZ0SEg4a1lXX256em85bTY5LWlZZlZfd3N5Mm1CdnVlb05RZGRRS0JrbWlVTW54VjkwdEF5RWc4WXJaWUwxck9jWHFjb2VJNl84UmV0bXZZeFZNMWJwdXFfajlmTXYtelRBOUpDZXlKMXFBTjVWQWFpY0lnZzFKWElDTEI5amVTT09zUXcxYXZxdk03TjFBcndDcjZvTUhycTVaQ0VLODV5VmI1RzhjY3Rld29pSFlzdVlPT0hnSDNMbmNoV3pmSjNNaUVjTTZfVjdSZHZCUWQwM2tQekdFVjh1STJ1aDl0bUxrNkY3VUt6WU02RXhJNW1LUEM5LVFOMk14ZTB6NDZrZTJteEdHR3cteXFMNjFHR0FpS0FjcENsSzVHeHlRbVBuREo4RHFKTk9WWDNoX283YTExVW8zMmtkdEcyaHVYcERVc2F5NkU4VGJ5R1dFZ3dmWDdaVnZrN1VNM2VqdDNqWXBxYmRZSlBNTUJCMGdNOU9mSVFjS0lUcm9IMHJEbFE2Wmt4UGM0ZHBlQ21NMzg3NXBXTlFrZzFKSnVRZzN4cE9WZ0VGallabEVENTBFaVZKNzg3cUM1YUdtakxRWl9yLVA3X2hJN09lcExWZ1BHSEFTUkxsd0dOLUZwTDc4UW9VempfWHUwNlBkNkF1VExtYmpoVmlERC11ZG5xdTVVR3dKNGxZamJqSkNBN3VQT2VfdWpzUWhZd1VHQV9YQnlsbkVySWxMN09YSE9UeGFEbEpHSDQtNHdNcm9hbmhPWTVoZ2NWZHZVQlpVZ1JEVWg0MGwzejhGVWJhUmxpaEUxeXQwdU5vR3F3TWRyWnZoTkl3YVFjUFlQeVV3UTdBdWh1dl9qSXRVcWlGQm9ncnlSb3Njd3oycXR0am12OEFRWUh5QWx5OXVqdmJ1cnk1TGNJaF9FUWZUekJuSnlfcDVZdzBDWG5CSzg3ZkVIOHJhWkh4V0VUcHFseHlmWWRWZjlQakRYTGJMYWJWQ2J6TXNSMnNYZkFvNm00VmhnaEYtQ0dOV3lta25EMDBUbWU0TGE0Vy1BLU9lR2o3Mi1uOFZjNmI5Zzc4d25tYkF0dGRyUThQWVdLUXZjdXlEbHZ5RUdHSF81VW10bFN5ajJKbHRLZXN3N1dzai1hazhDWDFidGRzU2xoQldjYUJ0dGozUmp3bEN4aEQyTXlWdHR6dDIwN3JPQjdxdEFJeVg1enJZMUxaSHB3RW1NeDhkWnM3NDdlY2ZhZVM0ZFFCWmN6U3lCNFZFWVRRWGdIeWdFX3EtYndfZXhqNWs5c0RHeHNTRnF5elFCVm9VOUtlbmFtZTRESnNMWFdaaW51UEhZUVNtWDJUZFBabXNkSHhCa3BBcHJiLUg0SGdFSnBPYWxCa0d3aFhza0hwYjZUTkhQeHktb09tLWhBaXptTVZPZzlnTDJOSHpSdUFtb0kzVTRFd2FfR0Vub3d0ZUFRU0xlY016WjZxZ3l1ZGswcG51UnlONlAxbTNCU1ExODRXUzNqeDFDNDYwTEFKM2FySS00QWV1aW5fMFZYM3FHdmEzNDR2ZXQ4N0RSN0liTUUzS01rWWtUdXotaHpqbnhHVVQ1cXZhWnYwNzdQVHExbTVDUVBUZGVlNlNnMzRmLXlseGg3MGoxSS1OWnZ3aFAyTFZ2OTJkdVZ4SlJSN3hzbEp6UzU3NXE3aWZ1UEcwUnp0NE55M1lESno0TWVDTk5wWklwTUJKeGR2bkc3azhsbXlvQlVRYmR6OHhCdW5YT3FsRDFHU205M05LYy13bzdxZnpJanYwWjF6WVpwLW5LN0o2NEUtSnp4MkQxZ2xJRG5vZGw5R215UzlwbzMzOUlZYU9QZlJnSTNad1FTVkdwcEJQN0dNRUdsRkVxbG83bTUtNFNZWEc2SmRYYU5yM2lRVmdoUEtkQWVpLWJDTEFQbGJGSkNFQVU1NXJfSEVmS2xUNS0zNlN5ZHRlcWFTZEdvMVhGRXpadWFILV96OEJsd1hXME4wdFJpdHo3SXh1OU5BTkM4R3V0Z2t2WHVFUl9Obnc1VUlsYXJlcE02VERfWl9lOHJGRDdoYXhWMVd0b1pkOUJTd05iUm1JeXU2Y2ZaelgyeFNPVlJVSndWSEctWTNaRGRpcWtzb19XR0J2TFJKQlRWT3NvZVZucWUxWktqb0NRSzFEYUZPb3B4UDdTTWhwOVlpY29XRk9VUU5ONS1EQjMtNjhDbURzdjE1LXMzRFRxUUM1OHhpd2JZLTRuWWt0eVNRV2F5elRvYlZOWG1idmI5SzktdWowYVRWRkx6SDFHMFl2TG1oU1NTd2tfM08tY3RSUExFblhQU1FWNkdVT2p5d0xIT1hTRDZfY1lTN1JrVXR4Mmc4bV8xbmhJUW0wOFd1aTVNSkdQR0JEb0RmN0szd3oyMnRnUVFXTDEwY2J0SlVvQkYyNjJVaUg3TE5pMjJWQ2tsMElYMVVRNy13cEkwcDhkV1NvV282U25PYTdkUTVpQkliZjlQX3JRd1dhYVl1NV9aQlpwQ000VXFWY2dhR1NZVnNxRHpXRVY4LXRjazBYOE51STJyZ3JSOTRDSnhjSms5MWwtb3owbldhTUFocHJubjJfd3hSWEdOYXkzNmJqU3EzWXhNMXN0dDFNN1JjenU3UTJQei1mZGpHWUFOSHZxQUtYUTZpbUphQXNwbE50Skh1SUp1andyTlRQd0ZzNGE5bDRkWHdNMDRRSWZoYzR5em1icDlYRjdVWVU0MjNXTWhRU2RMNUpaTld5QXVxOEFuRzdtd2dTUDNUMjROVGh1U0Z6Zjd1Tk5ySmdfUFk5VUNWcmlPS3FEN1lVS0FSZ1FFQ0EtTmthbG5YU0V1VEN2azJpZkVYOEh6cTJJbDV3TEZyOVFKVjBmT19EUkNyUzVzRHVaVmJ3RDI0Y2VqT3libWd1VWFuTDhiMklqS3h6TFVPT2tlMkVPNVRRTXRQUWZjeTYydkV5c2NwQzJFYXd6YUN2V3ViMVNXS2RZVnUtcVBzdFV4eWlPUHNpcFR3V1kzTXVNRkpwclNscWFVUDFJa3N6M0Q0VGpqSElzb0c2TUFsbFRZcUItSWpuSEhmYzI2blM3cmExeVVjbHRIRWtEd3Q4R1I2bmctNk9XNWJtT0J2VFFDamRUUDhSbXZ3b2tIRXZGQTlXbGs2OVZIVFpFSlNaNGdRZXFzcW83SEJJQ0h3dlViOW16YkhnaU50bGQ1WUFHT3V1U3BOTE1UcTM5LTMzVVZoTjBLa0hLUXZCenI1OXFmaFBIU3lVRnVMZzI4b2pYMGRvb3gySlFEZ1BobHZVYkR3cGluREJqVHBiMDdsY09EYVI3ZWN2M0tDOUhJQVdreDlhV0lza21Yb0FWYVNWTDBsZ05NQzNHVkxSMURfcGVoQTZySWs2Rl9qbDY0N0w4SERqRFJEbjZRRnRIa21BYW10TU9WSzdPMS1UXy1UTldwaDZ3YVFOdTBrV1ktZXAyRERndDk2enRYUkZTVWdNOXJMMnk3OENOMkVFWW1mQUktM1VjamdUblUxRnJXaEZ3dC1JNlVmNFZwNlY4XzZxTjJzVDJyeWFLWHo0Y0JJY0NoNm8tS0RpOW95SDV3MFF5eDhWb0xTNlN0YVEyYU5FejlKamctZ0N4aVp0Q1JYeWlnaWx3NTQ5VWFWMldreHR2bDZkeWRmZmFTM2ptYUxqaDRmOXhHa1JQRUdqZmZvMVY0dUN5QkI5QkNoaVVCZG1qVGxlVlJROG5Ccm5WQW5qYXVIYTRsV3VkNkhjSzU5VjJNTlpNTVdtS0tvb0E4cWtuMzVUY25EdXluSjJITUNnZElCSnVQVU9TeTI1QnhuZnA4RU5NSlZrV19UeU9uTXk5b3JtNTVobHhmSjRENThad2FRREs0QWlFZk1IVHdJc09uZ2pnU0o0S1JDdjFRa1NVeDdYRVhNU0lNUWtUYTBqS19aNS1PQ1ZNc3NBbzEzVzg1VlFKbVpDQ0tZRzZWbS1ybnVYSUdZZlZWLTg1OG93OEJZUGhDYVRhVzRkVnBLWERDRDVfc1FsamdJSnd0Vmc0T0RKY1dxelJpWWpUaXMyVzVjdlBvT1haNUIyZnFaVTlCWGVPQWM4S3Y2a2ZDVWp0OFV5UDFTaGswN2xtZ1A5b25PMWJ0eVc5VnhQSE5uUHcxNjZDeXJmVVcxaEFHQjB1YTFNYmtEVTdfdk40SlowY3VWNV9iLW9sUm80eV9yeGQ3UGRWREJsZHBWTUxsV3haLVhiV1VqdFpTVndaT01rOEtvV2F0bld6NVI0S1ZLNkFnbWJFTHhpa1MxSjYxZ1lJNlhTcm8wRnF1N0dNM2JXdlZQYm1xR3Q4SV9UcjNHamlKeDZ3OUhvZGlLbEZQc2JMakE3OWJuSG5DcHdwSEZBWGI5d3E3dmMtSF8wTU1WVGw3eE56bzhIZ1FfR2tPWEl1OV9uMVJiZS1SRDRXUmlId1RuYm5ZbXpHNjN4b3dHTlBJN2c4R203ZkxfTnpDWGhveDdUSUhXMjh0WFFCeVk4ZmR3X3YtMUtvU2lhSjNwNHBJUnlRQm1rQnpmOTlGRlpPS2g1bUxLMnBrSE9INWFlblFFNng2cHFDakNkcW53Uzk3eGJ0Skp1TkF4M1V6UDdHM2l5WlN5ZWw4SEd0YU1UZVdITzFuaE9lZFNlcTVhaGk4dEFFeVp2MFFScUxsQTRaQUxrVGh5ZUNZckpBd1cyaUJaOW5DRUVnemxqT01wdTJndHpDRnk5WktZWUloaWZKdVQ3dlBHdVhGTUtLVlg0WFU5ZmVoOFhIMUVWbnZ4cENuRjl5eEZneThuVW5CdUdsRkVWOFVCVU5oOE5BcElZY3BlTDd5Q1F5bDZQN3Fock43SEhINEloNmhLS2lVaUItWjRNMHJUSk9mZkd6MFhGWmlaSDdYT21KazBNc3pCbEVhaEFFbjJTU1JaaVFXTThsRFRRcEdrX0p3QkpRX1FVTmtMZnhCcHpsSzBUMGFxS1d3M2doWFktT3FqelM4cTFXOHVBYzNabFRUMFZHRWdWdU8yNl9vRXpXTnZYYnpKMUVfVEFxUkVWS0xfOWFlem1zM3JqYy1GdldSR2pMV09OTXhUdGw5ZzE5RFdhbFA2alJlUlJFeEg3djBLTEdvSHV1RW5IVHNQX2hsMnZuM05WWWl3dFFualFCOXpiMjZKRmxwZzZFaEF1STN4bFZMM3hwRE9qZUlPNXM3MllKY1MzcjAzYkIzbTVHMUljRVU4SkR2WTF5MjJQaG5iOGVmNno1cmk4RDY5clVLWThFOXFraExXYVhOMjRTLTZBYjNRZUtKcmxIR09yaEc2ZkpCdElqTF93Rk9kWjJqOFo0bVBZdmJaNUNEUTdnM01yYVh1aVJ6cWdvdXk3TkliempzOEZETkQ4ZHNMR1Z0OUNLanRVMnR5a0JrSUpQZlhrZ3U0LUpSVFRETjNINGdwek9md1B5V18xOXRMdlBKNEpRbHlzbnhKaEptSW5TUEtUUTljclJHVFFlS0F3THZZemdCMG5QWkIxd2dQVWJHaXRsaHlTV1pqbWplVU5oSnNnb0Z3ZHRFdTloTjRDejROWUVLZ1ozWnBKTC1sZmVJbmp0VEIwN1A4dWtpV3FHeGNBaVI5TDRPdl94VmxNYm9hblduNENNLThVSnZjRGhVRGtpTGt0eHRJOE03Zk01bngtMkFSX3MwcnlDV0F1YmVmQUxRdHVEUnQ1MVZrZnlJZkJ2UWFyb3dINnpIX1ZfZ1lJWFdOdDlvTElMT3FrNHlqcmR5Z0ZXWTl2QXZQN1Y4Q1lraUZuSVVrWGNaeUNsT2dmcTM5bXRKeHBMM2Nzb3VaWFRIcDExZ0xibWRUNUVTbjIwRThiblpEcTVvSEVEWGxPbGZHSE9ldmx6RnRCX1V4R1h0S1lYOUoxQWlLekJyZGI3QmJvemRFcDAteHVpeTZYRFp1Yjc5LW1LcnVQTDJaWWIxaTVoVmpRQUN2RnAyUHBaT2k3eFVmSlJoT0Z3Zi00OUphVE9XTjMtYVhVb0N1a0NpMWdqODhkQ29QWWNVdWs5WmxNelpkV1hJcDlnQ1gyN196U0U1WURCYWlWQ1dPc3c0Q0pGYmMta1FUOUNaMzRkU1hiczZ4S1N0OS1haHI5b3NpY2JHY2laMUlDV182WWRLM0l6ckh1UUV6TnNDQ0tEdW9iVVFRZFpBUlFMeWFlR2w0NWczN21Gb0tQN2J4b01aY1AzRjB3MzdBR0xMVzFjVi02dU5uaWhZQ1p0dThZckZQdWF4aF9VVUxPTk1SZXN5TFVsRHVydmxuQVV5ajFVMU1TbEMxTGtPbV9VV29NdVBzX1VqU2M3SDc3RTgwcmd2QmZCQTdaMkRQMmpWOFFRUmI2Q1RieEtpRkk5TFhmRlI3MjlFcURZVXVRRUk1ZDN0Y3liN3U4TzJlQnZfVGo5TzRPREx5Wjk3Z3BMdVZ3dUpVb3FqQVJnRU91U2lHdWwxaFJxYTl5NlZ0ZmpMNE5qajJJYjFsY2JyQS5OcXpkcGU4Yjdxc2MzQmpYRlhaWVpR" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/BackupSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/BackupSecret-example.json new file mode 100644 index 000000000000..03c778957281 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/BackupSecret-example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "testsecret", + "api-version": "7.1" + }, + "responses": { + "200": { + "body": { + "value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLmhERDdfVW9aU1ptR2JYN1dYUTU5WDkxZ0FQb05kdDcwZE1BbmgzbjQ3eWNjbkRNOU5vTm1hY0NHZmlNeUwxU0FlZDk0UjhBNDAtVE81TDNfQ05Qal9pdWIyaW03Z21nbHNPNnFFUVVIWU1tOEh2Wl9odFRrdEl4QzRPWEowYTB0S2hscnczZlBvVVFDZHVGcFg0ekEzYTR4VTZXTUNfYjZZVXZqUjZnSGM5TFRUR2tIazh1RTY0aVQ4cmt5RDRrU3RNcXhnU2lfRVZwUUdjWGdfNE9wQ1dBOUFha0N1NkpybGRaQW9BLUtXTWpQbGhaWHFYWGMyVkJlbUJjRTQ1YzY3QWhqYjJrSi1uQ1c5dHBjWS1JZ3JEUHFzWkswOS1WbHVtcl9SbzQzcG5FeW5jVFpTdzZlX1h6VnN0dUFOZHdiM0E2OVR1c1hfYkJKZ0J2SGQ4cDJSUS5WMTlhMVRacjZ2UjJHdEVaWGtOOXJRLmhwMU5IMmwtZklWbVgwWlNfTlRzekJfUEs1aktDUU5rSnJyRUhRQmZjQ2VjdHhmVU5uVlB6MVBqRWNDblZuV0pCUk4zTlFKZm01MjFLRHp1MzBIVUFEUGVmVHJyMFVFS2x5QTM2cThoWFY3VTdoQ0dHNk85NVpYclRsZlVENDI5RTNTNTQxdVBmWGpGR2cxbHlucFNTNnAtVkFzaXFlY1lpQWNuM1hhNzRhUm5xS3N3ZzhyU1ZOX09hSVU3ak1VVUhYZWY1ZmN0NlFrdWFfYkt6Z2dtR2ZiT2RTdVdNRmVQaF9mMkJMUFNGN3k1NThEMFZxSVlNY0JJR0dMU3BQUU93Q094OFF3Y3NVUEp4ZDFuWkVYYjRVNEJZYlhBcmFMX0NwekYxZlhYWVBsdmVUSGdKNVdrR28tWXNJVzAtT3ZqVGdLN2hIamxpR1psd29HOVUtbTJSVDZfbkhseHhVRFMyY3JseGNmay1OOTlXd0tEdUxFMTM5ZE1mN2RCSEl1aTdxd0RXdm1TN2JMTHYzM05Wd19XSl9DT1VGQjgycy1ELXk0UEdIRzVackhsSDgxa25mLVpRblU0SmZfY2lhMWhmWlY3ZFMxb21UZDQtNnJwZmpTMGxFT3VfZTQ5bUpYUGFpZ0hyLWFQYkFzTXJJQ2JvOUVIR2IzMXJ5SlR2QXF2ZmJDbU10bkdLUDV6aUNiZFh3SU5ONzBJTk5lZnJLWGZkZFBUd0RSV3d1ZkxCcGNlU0U0SG5EWVZVQmdkMDl4UUZidG12UDhhTXhhUlpGSTNpWG1fbmpCNmZfdlNhZUNUakdVYVVuRE1QQkdOQWQ5T2xVX3dvUnMtalNCVnVqd1FQSGlGcm5RWElkXzBRdXRYSm54cTU4aUtlTGJvNDJtOHgwaXBRcnB4aEZoUDdHNmZOWXAwVmxXR0RxZ1Q0VlpPQkZsZWRKUU0yaDQtb2xTbXdtUms0M0Y1cjdKd3h4aENqU1JReWx1MGEyQ0ZONWMyZjIxTElZaFliLWNReWFXMDNpV3hsb04zWld5cDJIb1FlUmZPR3lXUzBiU2NBT3JndGpBYnJaUFIwMGRRNnpSOHNBczFYUzh3dzBlaVczbFpsdjJwVWFxOVpTeVhnTS14b2NTOS1ueXRaWGtWWlUwX2dDVXJBV0ZKNG5XdW9oTGM1RkkyRWFQNWR0SXVWa3dnbXlsR1gtYk9ZeHp3dzVGYmI1V3VEbnJ5aDBMSnVic3Q4VXdLdnl3bk1jQ3duMjZSVTNxQVRudGJubVhJS0FyeGkwMldQVk9oTXdpUWZuX2h1TWk5emp3MEVuaXNWdktNWUNnR2xqNWlGZW5Tc0FKUXBiLUY4bng3OWFJQlJaTUc1a0huUDR5dGxmNm9FTkRsRXNJY21aeEtOdEIzcmJPdVROYUhLTXZBNmxSNzlMMDJZSTZrcEdrUUZnaHpIaTBjTWkwbFdCejRTM1AzUEMzZElZSVlQZ0Q2S05kT2FLWHkta0dWdUlsWFNmVlVrMnpzM0NBeTJhZEJjV0NMV094ZkRoQnlwNTl4MHpBRExvdnZySHRLOWF6TGN3N0lTbVl6eUhYMkpobVdReUYtTFd1VzhfcW41SkFVYlB5Z0RTRDYyMi1PTGZQVDZmc2VTWUVBUTFLVWRwZTFnSV9hZWxVT3FaRWN1aE5SckU1YUp0LTN5TEVLVWZIWXF6WTlGbHJrUE5MUC03Y2xRbmEySEhfZmMzZV9LTGtGUDFhQTJjM0RVaERseGhsTzB2bFVmV0c5eXpXaDNZN0NmRFlFMlBaUzZBcFBlYy0wa1NDcEVKMmtCcnFzWG4yeDJDX0FDdTdCTTVGZXNJQkN0M2NqSEdQSVVQRnEteGVmT0RCXzBQcXZDTXpBOHg5Zm10Ny1sNHhVQlJaa0dtZExhZFoxVzdFUXRNRVpsSWMtbDF1V1UzTU15cFZpVWR0OWxJUHVQVUEwc1NrbWxrTGhNSjgyNE5QN0hyVi01dC1ZNDcxaWVKMHdEUjFxMmU4MU8yazdNeTFlTDY3TlY4OVBHYU81SVR5WG1ueUVXMGtVbl9qa3l1UVRkV3dsS09HZVZIYkJWNFpxSXZHWjdQUS02TEE5eXc3a0dyZFRhVFZXOEdOOV9GY1c2VUhjbzA0U3dqTzY2S2x4VlFJWWpBdEZPZlBjWW5xNzF1RndyQS1UZHVDZG1sUFBHOVpjc2tiQmdrbF8wVk90dmhuc0pwYXZKZ2Zka0d3OF9qMkQzd0Jzemd0VndHNk9nNW16eVFwM2pFc0w3UmNtcXd6WFBOaDdKYXdHVDBJMlRvZHYyQ1Z3MDkzWjJlODFXR1NxRnlIejAxdjFBaGN2T2VWdmFjUGM2Y1JJaVduNW93ZF80d2FBdjlyNjVVdmtWa1FLRXpHUmo5eTZILXdZTTMyV1JyMzBlOU9MRTNKUU5POV9kNjRTRmIwSjZHa2VxUmtnNkVXc2xqN1JYLVU1VlhrS1BtMzNpS3c5dGU2NVBqQUNnZThRVDBYVWZEaUx5a1pGeUdpZ09ZMS1TVDFxUlE1eUhMTXhEc3BPRjFXd1lMQ2c2b3hocTlWMm55Z0U1cUJ2ZnYyWUtFaDdjM1dWNjJrYkw3UXJ2d0xkMHVRZ1FwYmUza3E3dGJzcC1lNWlud3cyY0YxQzByeHNScGZJRHlJMmg4b2xHMi1RQUZkWmtlMUlmaE1FZmNfdUdXX2pqSGJSWXVzYnZCRnpKMDdaOVJsVnFMR1A2WXBnTDFsRTFOY09xUVJyYVdxckdDTWZ6SzZMVENQSl93aHJRam9WTzdVRDJIUEVnUjZ2S3U3cWlmTmo3UjE5OUJuRi1EZmlnbk1TYTFKZkZadDNuVXVZOEhMUXRoUzN4MUMxOE50d3dsaDVuNGxYS3d5MERHenljbVNweE05QkdPNTFRckFmSXRfY0xHbUlzMlJ4MzMyeDRIdEZ3Z05nRzFBazNIUno4TlJ4V3lhNWhjb1NoYURXekhES2gyOVp3Vm4wYXVzeWJpal9uNlFGcnZZbjRSOHdPNlRQV3FrS09JcHkxc1lQNWxyNDc1anZSRVZGaFdCWDBiUXdJdnNlM0Q0a0dFQzgzU3FWYkhxY3phZTNwOFNxaG5tQW5ZYzBIbWp4clJfZUMzT0hYVFBGUFZmNDlVWHdrQjIwY1lvcjJ1dzBaTzJ2TUg3S1QwcjBSWDBQVy1qcGpORFpjSGRSNVVCMXFacGlWLWxaYkw0eF9IZW14aWUxY0RPOHNQSXhIOElUSWtOV0tTR1N2eWdraHBBbGl2RzVEZXJObElkeFE2c0tHQ3RtMDEyT2xjN2thaVFaNHh0TjR5ZVpPU2xyS0s0OTlIcWhObzhkNTNsbFFfMW5ncWlHbzhUSDlzWkFrclYwclc3dkJOSF92UlhBdTc2MnlpZGhZUURYYXJXSEFUMm9DU2hEN1lOdnotekoyZGtEajJMcW5CdFNCWFh5T2xsM3o0ZWFITDd2MDZ1QTgxMVBKQU5YZUdoenNaNFVQQUQ2Q0E4cGlxSHB4WGkxODRHNEJETVU4S2VHeHZLWnJiUlNOT2pTOFNrQUJKZERfSklIZ1RhNEFhNzdPUmNZcVY3OWZ5djFZVHNma2lLR2NUYzZIUjZzUVpsamt2U0NQNjdtTTRGUHRqTHlfX1pDQlNwdnRSVWd5UlpNM1dSOUViNHkxa29uRG4zUjMzN2lpSzdfbGtIa1UtZ21VbUpZUVdnUjYzT01pZUdRUHdNR3BSZXlRWE5yckJVTDN2Z2JYdjlac1ZDcDh1NHRwQjBleXJvUXgxZC1KSWJvOWVyR1VlX0ZzU1Fpd0tIaGFIUk02Nzh5dENkcHJFbDBWeG92TFVrX0xNcTFjN1R4MG5jbFl2WE4yUjhEMXNhU2FibkJSd19CU2tZMFNMSXdhb2RpY2o2ZzdLd0ZfMXB2eThhNF9LbnJNLUNkenBvdHA0aTd4QUJuY2JRVUEwWkpsYlp1elRpR0F4ZjFnclk1Z0dZOTVoWi1XZG1lOWlSazBHRTJGN3d4MlJyLUVvS3lZRjNjak0xMWt6MWFmME9fNFdyOXJoU3JrX1NHU3l2a3ZCTW9NZ0xOX0tSS1BlTjlqUnpwRlVST2VnN2NCbGlhdy1odnZhY2lCeDN2UWRqTE5jTldQdU1UbzVmME1QbmU4TUtXcFBoWjBySElMaEVuYW1pcG82X3pzNjczcE9ma09FS0JWWE9mUDEzR0UwS25SWTBab2JPLWRub254LVdBY1dodFZvX08xbkwwTWE5ZXFMMURhRGhJU0JNbVRIM1hkY2dDTnF0emIwcVMtS1l5Mk9zRzZOakRDVEM1aEI3MXIwU09WMUprNFV2QjdYemxTTW9YUXJnTzF2ZFVwSGtxaVhUM1RJZmlQMWRKcDEweDlSMlp5R0lzUzljQUtNMEZyMGRxQmJmQy16NTJpcWZweW4zUVVqb1Fld2hPYnJwUEZGOF9lUmVNRlIwSXZjUkxnMHpwek56UzU1N1pkQkZhemxNTThLcnkwN2QyUDAyTnZtclUtN1ZjOW8wZm1qem9WOHVVTG9PMkJHdmFRdnFJNmtBTmQ5VWo1X2JkY2NVUzBhcklzcGFZa1UtUXQtNnQxYU5YUUdGZEtUbFMwSVowek54bkNIZWRySEE4SkYtOFg3d1ZpRW1McXJQbU1Sd25sbWx3SnhxLVlReWMydmdUallSbUxCVU5TS3VrZkJsa2VnMmlCRWdySksxVlNyRWswX0ZvOXkzV1EwVlZuNXhEZXlGc1JuWDI4Tkl6alFQLVNXaHhYbzdPYm5YY1cxZHlWNE1fYjdzM096cEMwOTJWcGZYQkpaTDhBeHgxNGY2TmJzTEpXLW95VEdsaTJFb2FCZHJKQ2JkQlNOdWJlbGdRRmU2V2hqSjRGdlNrYVJISjFTT3ltbGFtQmYwaVNDOGM2X1g2SkZORjNmOXYuQjc5SDJvbVIyTU52SndydHVzclJ4UQ" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/CreateCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/CreateCertificate-example.json new file mode 100644 index 000000000000..07ec2e513607 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/CreateCertificate-example.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "selfSignedCert01", + "api-version": "7.1", + "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.1/examples/CreateKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/CreateKey-example.json new file mode 100644 index 000000000000..ae87e0222150 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/CreateKey-example.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "api-version": "7.1", + "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.1/examples/DeleteCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/DeleteCertificate-example.json new file mode 100644 index 000000000000..3bf1793c6b66 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/DeleteCertificate-example.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "importCert01", + "api-version": "7.1" + }, + "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.1/examples/DeleteCertificateContacts-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/DeleteCertificateContacts-example.json new file mode 100644 index 000000000000..0f98fa5a9b94 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/DeleteCertificateContacts-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1" + }, + "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.1/examples/DeleteCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/DeleteCertificateIssuer-example.json new file mode 100644 index 000000000000..363cf914e85e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/DeleteCertificateIssuer-example.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.1" + }, + "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.1/examples/DeleteCertificateOperation-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/DeleteCertificateOperation-example.json new file mode 100644 index 000000000000..95e81055df1f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/DeleteCertificateOperation-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "deletedRequestedCert01", + "api-version": "7.1" + }, + "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.1/examples/DeleteKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/DeleteKey-example.json new file mode 100644 index 000000000000..5cbd4e7d9fc4 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/DeleteKey-example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "api-version": "7.1" + }, + "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.1/examples/DeleteSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/DeleteSecret-example.json new file mode 100644 index 000000000000..c93d78374f4b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/DeleteSecret-example.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "GetDeletedSecretTest", + "api-version": "7.1" + }, + "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.1/examples/GetCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetCertificate-example.json new file mode 100644 index 000000000000..389bcfaff7f3 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetCertificate-example.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "selfSignedCert01", + "certificate-version": "pending", + "api-version": "7.1" + }, + "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.1/examples/GetCertificateContacts-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetCertificateContacts-example.json new file mode 100644 index 000000000000..0f98fa5a9b94 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetCertificateContacts-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1" + }, + "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.1/examples/GetCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetCertificateIssuer-example.json new file mode 100644 index 000000000000..363cf914e85e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetCertificateIssuer-example.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.1" + }, + "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.1/examples/GetCertificateIssuers-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetCertificateIssuers-example.json new file mode 100644 index 000000000000..b44537050a63 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetCertificateIssuers-example.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1" + }, + "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.1/examples/GetCertificateOperation-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetCertificateOperation-example.json new file mode 100644 index 000000000000..4b8cbed06bd7 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetCertificateOperation-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "selfSignedCert01", + "api-version": "7.1" + }, + "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.1/examples/GetCertificatePolicy-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetCertificatePolicy-example.json new file mode 100644 index 000000000000..e2fcca362501 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetCertificatePolicy-example.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "updateCert01", + "api-version": "7.1" + }, + "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.1/examples/GetCertificateVersions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetCertificateVersions-example.json new file mode 100644 index 000000000000..ebe62bd98b65 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetCertificateVersions-example.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "listVersionsCert01", + "api-version": "7.1" + }, + "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.1/examples/GetCertificates-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetCertificates-example.json new file mode 100644 index 000000000000..c0d986517b8b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetCertificates-example.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1" + }, + "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.1/examples/GetDeletedCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetDeletedCertificate-example.json new file mode 100644 index 000000000000..909f89588630 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetDeletedCertificate-example.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "getDeletedCert", + "api-version": "7.1" + }, + "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.1/examples/GetDeletedCertificates-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetDeletedCertificates-example.json new file mode 100644 index 000000000000..f0ebb81be12e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetDeletedCertificates-example.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1", + "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.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMTIhTURBd01ETTVJV05sY25ScFptbGpZWFJsTDB4SlUxUkVSVXhGVkVWRVEwVlNWRlJGVTFRd0wxQlBURWxEV1NFd01EQXdNamdoT1RrNU9TMHhNaTB6TVZReU16bzFPVG8xT1M0NU9UazVPVGs1V2lFLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetDeletedKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetDeletedKey-example.json new file mode 100644 index 000000000000..5cbd4e7d9fc4 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetDeletedKey-example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "api-version": "7.1" + }, + "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.1/examples/GetDeletedKeys-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetDeletedKeys-example.json new file mode 100644 index 000000000000..24bea234cf78 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetDeletedKeys-example.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1", + "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.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMzYhTURBd01EVTJJV3RsZVM5TVNWTlVSRVZNUlZSRlJFdEZXVlJGVTFRd0x6RkRRa0ZGTkVaQk5qQTBNelJGTmtZNE9FUXdORE5GTkRFM09FUkNPVFE1SVRBd01EQXlPQ0V5TURFM0xUQTFMVEEwVkRJeU9qUTNPakU1TGpVeU1UZ3dPVEZhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetDeletedSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetDeletedSecret-example.json new file mode 100644 index 000000000000..c93d78374f4b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetDeletedSecret-example.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "GetDeletedSecretTest", + "api-version": "7.1" + }, + "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.1/examples/GetDeletedSecrets-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetDeletedSecrets-example.json new file mode 100644 index 000000000000..10a53fd73fdf --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetDeletedSecrets-example.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1", + "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.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExNDQhTURBd01EWXlJWE5sWTNKbGRDOU1TVk5VUkVWTVJWUkZSRk5GUTFKRlZGUkZVMVF3THpZMU16ZERSRVJGTlRJNU5qUkRSa1pDTVRkQ1JVWXhORGszUXpSQ1JEZEVJVEF3TURBeU9DRXlNREUzTFRBMUxUQTBWREl5T2pRME9qUXdMamsxTnpZeE1UbGFJUS0tIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetKey-example.json new file mode 100644 index 000000000000..8f70bb84f953 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetKey-example.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "key-version": "78deebed173b48e48f55abf87ed4cf71", + "api-version": "7.1" + }, + "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.1/examples/GetKeyVersions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetKeyVersions-example.json new file mode 100644 index 000000000000..afdb4e5c8275 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetKeyVersions-example.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "listkeyversionstest", + "api-version": "7.1", + "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.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMzYhTURBd01EVTJJV3RsZVM5TVNWTlVTMFZaVmtWU1UwbFBUbE5VUlZOVUwwRXdPRUZDUVVVNE1UZ3pNalF5TVRsQ05EUXpPREZFTWpoRVJURkdSVEJESVRBd01EQXlPQ0U1T1RrNUxURXlMVE14VkRJek9qVTVPalU1TGprNU9UazVPVGxhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetKeys-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetKeys-example.json new file mode 100644 index 000000000000..4189e910d05b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetKeys-example.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1", + "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.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiE5NiFNREF3TURJM0lXdGxlUzlWVUVSQlZFVkxSVmxCVkZSU1NVSlZWRVZUVkVWVFZDRXdNREF3TWpnaE1qQXhOeTB3TlMwd05GUXdNVG94TVRveE5pNDNNekE0TnpReVdpRS0iLCJUYXJnZXRMb2NhdGlvbiI6MH0&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetSecret-example.json new file mode 100644 index 000000000000..3675d1e64a67 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetSecret-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "mysecretname", + "secret-version": "4387e9f3d6e14c459867679a90fd0f79", + "api-version": "7.1" + }, + "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.1/examples/GetSecretVersions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetSecretVersions-example.json new file mode 100644 index 000000000000..9fb168cedf05 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetSecretVersions-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "listsecretversionstest", + "api-version": "7.1", + "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.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExNDQhTURBd01EWXlJWE5sWTNKbGRDOU1TVk5VVTBWRFVrVlVWa1ZTVTBsUFRsTlVSVk5VTHpGRU5EazJNa0l4UlVRM09EUkVRa1k0T1RsR016TXpNa1UwTnpZNFFqY3dJVEF3TURBeU9DRTVPVGs1TFRFeUxUTXhWREl6T2pVNU9qVTVMams1T1RrNU9UbGFJUS0tIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetSecrets-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetSecrets-example.json new file mode 100644 index 000000000000..f8bc86ffb466 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/GetSecrets-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1", + "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.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiE4OCFNREF3TURJeUlYTmxZM0psZEM5TVNWTlVVMFZEVWtWVVZFVlRWREVoTURBd01ESTRJVEl3TVRZdE1USXRNVGxVTWpNNk1UQTZORFV1T0RneE9ERXhNRm9oIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/ImportCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/ImportCertificate-example.json new file mode 100644 index 000000000000..e77624d6aff9 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/ImportCertificate-example.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "importCert01", + "api-version": "7.1", + "parameters": { + "value": "MIIJOwIBAzCCCPcGCSqGSIb3DQEHAaCCCOgEggjkMIII4DCCBgkGCSqGSIb3DQEHAaCCBfoEggX2MIIF8jCCBe4GCyqGSIb3DQEMCgECoIIE/jCCBPowHAYKKoZIhvcNAQwBAzAOBAj15YH9pOE58AICB9AEggTYLrI+SAru2dBZRQRlJY7XQ3LeLkah2FcRR3dATDshZ2h0IA2oBrkQIdsLyAAWZ32qYR1qkWxLHn9AqXgu27AEbOk35+pITZaiy63YYBkkpR+pDdngZt19Z0PWrGwHEq5z6BHS2GLyyN8SSOCbdzCz7blj3+7IZYoMj4WOPgOm/tQ6U44SFWek46QwN2zeA4i97v7ftNNns27ms52jqfhOvTA9c/wyfZKAY4aKJfYYUmycKjnnRl012ldS2lOkASFt+lu4QCa72IY6ePtRudPCvmzRv2pkLYS6z3cI7omT8nHP3DymNOqLbFqr5O2M1ZYaLC63Q3xt3eVvbcPh3N08D1hHkhz/KDTvkRAQpvrW8ISKmgDdmzN55Pe55xHfSWGB7gPw8sZea57IxFzWHTK2yvTslooWoosmGxanYY2IG/no3EbPOWDKjPZ4ilYJe5JJ2immlxPz+2e2EOCKpDI+7fzQcRz3PTd3BK+budZ8aXX8aW/lOgKS8WmxZoKnOJBNWeTNWQFugmktXfdPHAdxMhjUXqeGQd8wTvZ4EzQNNafovwkI7IV/ZYoa++RGofVR3ZbRSiBNF6TDj/qXFt0wN/CQnsGAmQAGNiN+D4mY7i25dtTu/Jc7OxLdhAUFpHyJpyrYWLfvOiS5WYBeEDHkiPUa/8eZSPA3MXWZR1RiuDvuNqMjct1SSwdXADTtF68l/US1ksU657+XSC+6ly1A/upz+X71+C4Ho6W0751j5ZMT6xKjGh5pee7MVuduxIzXjWIy3YSd0fIT3U0A5NLEvJ9rfkx6JiHjRLx6V1tqsrtT6BsGtmCQR1UCJPLqsKVDvAINx3cPA/CGqr5OX2BGZlAihGmN6n7gv8w4O0k0LPTAe5YefgXN3m9pE867N31GtHVZaJ/UVgDNYS2jused4rw76ZWN41akx2QN0JSeMJqHXqVz6AKfz8ICS/dFnEGyBNpXiMRxrY/QPKi/wONwqsbDxRW7vZRVKs78pBkE0ksaShlZk5GkeayDWC/7Hi/NqUFtIloK9XB3paLxo1DGu5qqaF34jZdktzkXp0uZqpp+FfKZaiovMjt8F7yHCPk+LYpRsU2Cyc9DVoDA6rIgf+uEP4jppgehsxyT0lJHax2t869R2jYdsXwYUXjgwHIV0voj7bJYPGFlFjXOp6ZW86scsHM5xfsGQoK2Fp838VT34SHE1ZXU/puM7rviREHYW72pfpgGZUILQMohuTPnd8tFtAkbrmjLDo+k9xx7HUvgoFTiNNWuq/cRjr70FKNguMMTIrid+HwfmbRoaxENWdLcOTNeascER2a+37UQolKD5ksrPJG6RdNA7O2pzp3micDYRs/+s28cCIxO//J/d4nsgHp6RTuCu4+Jm9k0YTw2Xg75b2cWKrxGnDUgyIlvNPaZTB5QbMid4x44/lE0LLi9kcPQhRgrK07OnnrMgZvVGjt1CLGhKUv7KFc3xV1r1rwKkosxnoG99oCoTQtregcX5rIMjHgkc1IdflGJkZzaWMkYVFOJ4Weynz008i4ddkske5vabZs37Lb8iggUYNBYZyGzalruBgnQyK4fz38Fae4nWYjyildVfgyo/fCePR2ovOfphx9OQJi+M9BoFmPrAg+8ARDZ+R+5yzYuEc9ZoVX7nkp7LTGB3DANBgkrBgEEAYI3EQIxADATBgkqhkiG9w0BCRUxBgQEAQAAADBXBgkqhkiG9w0BCRQxSh5IAGEAOAAwAGQAZgBmADgANgAtAGUAOQA2AGUALQA0ADIAMgA0AC0AYQBhADEAMQAtAGIAZAAxADkANABkADUAYQA2AGIANwA3MF0GCSsGAQQBgjcRATFQHk4ATQBpAGMAcgBvAHMAbwBmAHQAIABTAHQAcgBvAG4AZwAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIwggLPBgkqhkiG9w0BBwagggLAMIICvAIBADCCArUGCSqGSIb3DQEHATAcBgoqhkiG9w0BDAEGMA4ECNX+VL2MxzzWAgIH0ICCAojmRBO+CPfVNUO0s+BVuwhOzikAGNBmQHNChmJ/pyzPbMUbx7tO63eIVSc67iERda2WCEmVwPigaVQkPaumsfp8+L6iV/BMf5RKlyRXcwh0vUdu2Qa7qadD+gFQ2kngf4Dk6vYo2/2HxayuIf6jpwe8vql4ca3ZtWXfuRix2fwgltM0bMz1g59d7x/glTfNqxNlsty0A/rWrPJjNbOPRU2XykLuc3AtlTtYsQ32Zsmu67A7UNBw6tVtkEXlFDqhavEhUEO3dvYqMY+QLxzpZhA0q44ZZ9/ex0X6QAFNK5wuWxCbupHWsgxRwKftrxyszMHsAvNoNcTlqcctee+ecNwTJQa1/MDbnhO6/qHA7cfG1qYDq8Th635vGNMW1w3sVS7l0uEvdayAsBHWTcOC2tlMa5bfHrhY8OEIqj5bN5H9RdFy8G/W239tjDu1OYjBDydiBqzBn8HG1DSj1Pjc0kd/82d4ZU0308KFTC3yGcRad0GnEH0Oi3iEJ9HbriUbfVMbXNHOF+MktWiDVqzndGMKmuJSdfTBKvGFvejAWVO5E4mgLvoaMmbchc3BO7sLeraHnJN5hvMBaLcQI38N86mUfTR8AP6AJ9c2k514KaDLclm4z6J8dMz60nUeo5D3YD09G6BavFHxSvJ8MF0Lu5zOFzEePDRFm9mH8W0N/sFlIaYfD/GWU/w44mQucjaBk95YtqOGRIj58tGDWr8iUdHwaYKGqU24zGeRae9DhFXPzZshV1ZGsBQFRaoYkyLAwdJWIXTi+c37YaC8FRSEnnNmS79Dou1Kc3BvK4EYKAD2KxjtUebrV174gD0Q+9YuJ0GXOTspBvCFd5VT2Rw5zDNrA/J3F5fMCk4wOzAfMAcGBSsOAwIaBBSxgh2xyF+88V4vAffBmZXv8Txt4AQU4O/NX4MjxSodbE7ApNAMIvrtREwCAgfQ", + "pwd": "123", + "policy": { + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "kid": "https://myvault.vault.azure.net/keys/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "sid": "https://myvault.vault.azure.net/secrets/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938557, + "updated": 1493938557, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/importCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938557, + "updated": 1493938557 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/ImportKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/ImportKey-example.json new file mode 100644 index 000000000000..030fdb4f47a7 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/ImportKey-example.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "ImportSoftKeyTest", + "api-version": "7.1", + "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.1/examples/MergeCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/MergeCertificate-example.json new file mode 100644 index 000000000000..04e23e7ecee9 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/MergeCertificate-example.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "testcert", + "api-version": "7.1", + "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.1/examples/PurgeDeletedCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/PurgeDeletedCertificate-example.json new file mode 100644 index 000000000000..ff246883d75b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/PurgeDeletedCertificate-example.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "deletedcertificates", + "api-version": "7.1" + }, + "responses": { + "204": {} + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/PurgeDeletedKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/PurgeDeletedKey-example.json new file mode 100644 index 000000000000..7042f4a44162 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/PurgeDeletedKey-example.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testdeletedkey", + "api-version": "7.1" + }, + "responses": { + "204": {} + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/PurgeDeletedSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/PurgeDeletedSecret-example.json new file mode 100644 index 000000000000..b8b83b5497a0 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/PurgeDeletedSecret-example.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "testsecret", + "api-version": "7.1" + }, + "responses": { + "204": {} + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/RecoverDeletedCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/RecoverDeletedCertificate-example.json new file mode 100644 index 000000000000..19e8edc4e6a9 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/RecoverDeletedCertificate-example.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "CertCreateDeleteRecoverPurgeTest", + "api-version": "7.1" + }, + "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.1/examples/RecoverDeletedKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/RecoverDeletedKey-example.json new file mode 100644 index 000000000000..4a9bfd6770c9 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/RecoverDeletedKey-example.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateDeleteRecoverPurgeTest", + "api-version": "7.1" + }, + "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.1/examples/RecoverDeletedSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/RecoverDeletedSecret-example.json new file mode 100644 index 000000000000..48bbbd51dbbc --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/RecoverDeletedSecret-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "SecretCreateDeleteRecoverPurgeTest", + "api-version": "7.1" + }, + "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.1/examples/RestoreCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/RestoreCertificate-example.json new file mode 100644 index 000000000000..37af30bf7030 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/RestoreCertificate-example.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "parameters": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLm85bmpNWEFSZWVla2NaRXBsVTNjdUxQcVZlWmxFbGRDM01XOWpYR0h6bnBXRTdHRGVOSXJraGZscHdTWXFnQnBYQkozMFpUQkRpRmpROENXSnJfUGlsUWNDRkZyN0xrdWJhWUs0TW1zcVh5WGIzbkRJcUJkQmZIUVNpZ1ZET0J5Ym9sUlRNNDYzYjBTbXhLVzJheEdFS2NuZzQ5WFkycG1SR0Vrb0plcHJWZ0tyRkpOUGQ3cGJIS3hQSWdDOFlnT2xudnZxR280RlRDSzh0ZWotcUt2UzBfRGV6Uk5vdTZqZ25SekpxX0g2NGxWMk1hQ0NnUy0xbTlyOGVOTVVvSlhTV1hwc0lneng1RzdEbzIya1ZEY25vMW9rajlCMXNvbklkWmtuY1JybDJBVHNRZVlzZXdkUVd1VmhxRzVLN0pNQWo5YzBRdkxhTmlpdl9PY2pFcm5qUS4zbmI4azJ3SEcyNHFJelNNb184WG13LnJzc3NMNjJ1aUNfTm9IbG5zQlgzcEEtck1uY3g5R3V2NmJYSHpKamxwOWNMUnVaSDBSWlJYVXRwU3BPQWdyZ20tU3BxeEdWSjd2bmprbV9FSzJwYy1sZHNjUWtRSDB4bVFVcGZFNzN5b1VTYTNXVVNMS2VIVnJLdUg5MUtJR0tLODE5ejc5d1Y5Y0F3UjlzcHJxbFFWZnlKdlNFM2tnZTh1RVBpRFFVMFl5WnJqVjBsMGJCU3VkeTN1MVlsVHB6Wk1EWmpUcE05ZGtMclgtaGdxZ1FGa2xFa1hNRWlzd0RDZVM3Y3J2bFg1bnVzbWh5SkZCMklCd3dxNWJieHptV1diU3JOc3lFMmJmWEpXOWN4TFlQcnJJZFpfbkd0X29RSGVQcUFZTS1iVnpTdzdBRGJjMU15NTZwclBGLW9PSm40MHptOTBaaFBTVGMyQXNKRGFBa3R5WFU4WktOYUhFVUlHLWI1SGhUdFBuZ20wN0FrWEtQNngwaDhzZ3ZIaGdCeGpfdWRfQVpQc3pLWG1HdUhFTW9lRGhpT3NkQVdRR0pwR2t0NHVlbmZyamNSeXVlaXJiTC1RV3o4MEtZUnk1QklxbzVJc19RVHpWN2dqMGstYS0td24tazNsNTJ4YjhaNkRXd2tWZ3hqUlNXOXZnV0pVd2U5M1ZrVWtHM3NLRW5SOE9ueTNjWlhQVl9LbWtBTEdlR0ZzQm53SmQwY3dueTBCN2I5VWQyQ19kWEZ0N1BvbnFVNldfT016cC1Nb1NtRzRHbEFpUkVfQ3FrWlhkalhIMVItSmpObUNfdXlPUTdaN1BVaDAtNmd2YUxpcE1CamlWR1FwdzlEZDhmVmtCbWk4VW5uOUxPYXJmSXVtcEJyUE43TTJhM05KdjN6b0NkanhZVFVUMTN1aElpYWl3aExoUFZhT2pUbFRmTkpqbHhIbG5lbGJ1RWJsZTk0bVV1bW8wcjhKRlFMSDdfRjhXMVo0OC1BcjhYYXJwMXhIY0FReHk1WWYwclktdUU1dTAyRnRHUHlPZ0JfNV9WdFlNR2VfRE1mdENLOGVMZGFnVllMRDJDNDUxTldZeVVfeHdNUWdQbXBaMWFnSEdCb2s0ejhsSFBndVhCQ3R2WFFuTHBXQTVBamdOLWNoWjNwUGJmc2RkNjBhekJuWDVaVXQza2hYaWNDdWk4b0xidEtzQUdmckNOZzFwT2Q0MHBHMEJlVy1lNVE1WWQydjY4eFh5a2RiTXhFblFCM3Fzd1djVlh1QXBIR18wREZVVmZvSlc2aVBZcDNWVE51amM5M3QtMDcxWnlZbUZ4V0RfVThMYTAtM19RLV8yZ0pwMVBaVV8tMVBRM1huLXdSWk1vb3JkZGZQa1VPZ0lqdWkwa1IwZWt5RjZvdWdLNnJrSVZHaGp3YUp0ekdKczJLdGxncnRCcEs2MXZEaE5zbFR5VHU5OUp2T2RFTXhwRG5lTEg4NnlvVnhxT3lIT3lxNjByXzdpTHgtdy03Q3FzWTloT3dmQlBZZ3BQVlM2bm9oZVBocTkwaGJTX0lrM21YbnRkRUNMREtSMi1wWFh6bjlPRjZIN09EdHB4S0VXQkdCaHJ0Ykxmd2JZS3dmWmZSVTJVUHpkLUxFd1lQdDloU203Z3lSODNoYkZiSFNBV1cySncxRWl1c3FURWRsRW1lQ3k2cFp1MVFZWko0TUQ0OG5rVXMwdmVHUVhTU2Ytb2RhQm1fYjZZdVh1cWcyWk03MlZjUTd4ZzV4MmpFenFqcllmdjdTTGJINFZBcWp0aFg5LUdRaWEwWEZaS18xempIenhkd1B0R2lSOHJfMkFFZTgtRXFoNi1FaTZKdjRFZjYyMnRrNWFJUWx3R1pETWpGSVNuUkpRdV8xcnJiY1E3enZsbWhUSWFQcUJNRFVxeHBEOXNWUlhuSHdIaTl1b1BCUTllbWJIMkV5WDV6MEhWRXlDa1JEbUd3cmR2RGdsOFVzMUhURjVwYXlYZmF2WkZUZjl3WFZyQXpsRFBEQkFJVFMzWnVJMEJWR2pJUGV1SnRiako4S1pTczRFQVNRRTVyVjViTUpNQXcwa19nYkVRTEZGSjJVb0ZzcWU1QUszM2xGXzR5cGMxU0JaWjJfUzYtbEQyNkpyRFVJSjFFRmJhbWtoUk12bWJIT1Utc0hDT0lRcHdadlJzV3Q3NExSQ1ZyQ09jMGpUdE5TT1JPUW5XRHVXRlFXSzk1TkRGMG96WjIyLVFEMU9YOE9iU3daaHdOXzNfS1pHRmtVMEhNdzNjSTI5LWUxbFltRDV3cmJ0ZlRFbllOeHJKOGpuUWFBY2FoNy14Q0JKeUQ3elo1MXIzRVVyY2VnazBzc1dLeHRPVjRLcTZENmxuVmU3bFpUT1dfTU5aZi1JSzJUbnZCaVZIMHk0SkVGaUxzSDJHbTM1d28yYlZVaXJsT1ljVEk1NlZhdDhMRWhGaEotVlUyNk84NHo2dUJFZmJucEZLbmdKc3pfYVlucW1zNWV1bmd3ek5ndjdlT0U0cUdKSURyMTRBUXRWdEYxcWdrZHNnVllWVXg4U29SQ0NobE5VUzRNRGxhc1hwS1VmV19ENWIxbDRkbXZiNEZNRHJqakJ6djk5dGJSeGZFYUVOSFlYTHZFZnJ0b0pMeW9na2tmNkxlbVoxVDZRbnRtNlR4S1IycU81WU1vMnRJZHlQNmZNRmkweEYtdE1IaHNSdVN3VEpybW1nREcteHVpZllVNkpfaElSNkMzVmo2VkFMMW1oZy0xeW1pRXZuanVLbElONzc4NmFWdVNpNmx5TjJJNzZqY0R6SHZ0VW1ibkVvWWtORHNPQXdqQk9MNFBlS0VjR1hWcm5YNDJhNW5IRWM2cmZQdjZ0Q2tVSUI0UldIdzEyUTFiNDM2N1JvRS1PTWN3TnV6ampob1M0S1ZJbHo4UEFMOW9YYTR4NXlQeG1aVzZ0UUVna1pKeFhEcS00SWRtd1UzTnpVZUoxdGpNaXFsc0xRWDdlc29fTHRtTWJ3bm83YkI3bjRlVnZ4aUtQU3p3dW94c25aaGs1b3ZSSE1xU0NtZjU2MjJvUTZvWEdmNUJLWExlQWdqaE1Sd21razEtUzlGajlyc1hlT19VYjJOMF9hVEFLemlidXIxNVcxaHI3Wk1PVFlxOFlSSGVPaWxSX3Bkdjl5NTlDRDQ1WmE0ZXFURHVrNmRxZ1d4YnoyVVVtMnpwM3pvTHVKSVZ1Y3FIaUVRTVNfMnFKcy1xQTAwT2FFY3huZTM2Q1RsZVNwZjF5cjh2VjNWNW1mQU5zRnJBa21CMnBRWTNfZ21UbldTYTJ3UWlMa2RFRllPSExTeEk5UVowNHo4ZFRfbW5QMmIwWV96N3ZLa0VGQmFpNU02UFdPWjVIOUx1M3Rnay1fR0g0ODd6ZHpuQm0weWZZY3ZIOHJUd1QyQl9UZVRFMG4xcWFRdDRiQ0diUkFQNE1DTDl0SGlIcmlzWEllejQzZlZ3b1c4R2x4YmxKanlLWkpXbmlRNjlBYks3SmYyUER6d2NVSHhkZU5HNGxEZmt6WmFxU2lybGRzZlhXOHBGLWZ6WFVVWHR4eDF4Um5nQ1hJVkxLbU5ZbV9CNnNrNGo0VzROVFMwQTBOcFhsZGJCWjZWWmFDMDNvRHVGUFY0MGtwdWQ0WEd3Q1l3M244ZjFHb0Z6Sk42QjFqOTRLeTdtNE5YT1JsQ3ZaRW5qZTl6T241T1d1ZG9USWRoRzBobXVDUTZ6TXI2YkVaTUFoV1ZFdlREY19iXzZsOWdLWmVxNmVtekxvcmptOEQzLXcyLXRBYlE2Tmpjd0J3eEhMZzlCRllRRFdvaU9UVmJKN2VBcUVFMHVxVkhBcE9KbFVIc2tmQy1uV3NzOV9fRTFURHBLcjRfRE93NFhPUGNzT3dlVU9EUWg3cVFXRE1ZcDVHU1poVWE4MVVHczhmemZKU3JPbmtaTmRVTS10Y0h3R01mX3didy11dmt4UFUtV0tvNUNqR2M2aU5KMDB4MjZZdUpCWXd6TVFyeDBJQWgxMjVBWlozX2FvaFFpLWw3a1pZVE82Q0JVOVZsYllNMndrZXp4ZGhrQ1oxd080Z1NNbDlKU3A5ejhxNV84SU1WM1pma00xV1VqSGZMQk4xRXdFMjRxZFVzcWxyU3NZN1hQaVlpcXQ5ZktXVmZDTWw4RU0yd2ZHYlhxMUI4eWl2UlpMcko0eEk2MUdVUWJFVGU4akNTYTF2aUxxZ0FIa25IYjVjVHIwbDRhTW1EZGZKWnJxZEdpb1lPb2IwdHBuc3IxanRfZm1obGhJa1NSQnREUk5XWEU1OXBjVXlULXpyVjBxZl9sOHN2TlNEV2N3d09YQ3lITWZzLWw0T29xMldVWTVLQi1nSG1HYUJod0oxa19ra3V2S0hlMl9TY0loc3JjTXV1eW5aLW14Vzl5NHBBS3pvdVFsQjR0ZGZvbHdSRk5KX0tHYWJPZXJiWFdDT0ZTd0JVTjdNaG0wOXNyVS1VWG5od1IwdTYyTjVvMDlfbGN5eThnWDg1ZUVrenhuOGZ2NHd2T0Y2dUd1cFk5UGxpSTRLMTNqSHlOd0ZuY2VmRlp2b0dxVlhkcUg5RGJkYS0zY1FhbVFlNmlMek0wRDlnLXlFc2NBTkpKS3ltelVzemZZdV8yY0p0TEhsd0I3NVhLeW1EMG9nUkRvRkRwTmNPd1dRRUlwdVJwU0pfdWtzR2EwZkd3MGVBTU4tQmc1OUs3emhRWHJISUZOckN1S1VPMVdvTkV5WkM2UGlKSUwtUlRsTFQ2WlBNZmdSZzZiUl9aQk43X2dseHBIakNDaFZXMkZ3MnJFUDJJX1pSeHFqdS1WbmVwV2o4eU1CaHZXZzdXNm9QWm1odmVtUTBkQUljNVZTbVVaelhvNFVURmJxSFN2MGlyVTNscVk2eUl1MGRPd2t2MlF4ZENfQVdRUmdLSGRUeG1xYXFUSXJwclZyUHZ1MDFQSGlFbVRnaDZZVEZ6Yllqb3JEeFExWDhlTUN5Rl80cWNjMnhOdTJRblBIdUR0RGZkSy1NV2xJUDhHUEhSMmhPMjlCa0JJSEM4TlgxZmxDN1ZSZkZsQ09McGVIeWl0MGRSd1d2S2tieGNIWl9fRE5ZLVBNQlZMZGpyR3lxT2JoQnpQZHZMeFpXWVU3THNRbnM1dmxiMTc5YXczX3VmclRIWGs0MVpjaDY2ekFRRl9tekQ3ZEVuMm1fb2tBaTh6NTRwdzdxUDAwNHkzenNPd0RmR0htYWF2c3dGMW5NMUN2YXhXajRINE45dVNUaV9DM1oza3lTRHlUNGdUZjNqc0FKUEJybXdSQVBpaU5PTTU3c0x2Y3dJRk9ENnA5QkdWbjFwbjQyZGRTU3A1M3JieTZEcnlwcHdDaDFrampQX3lCbTZRZnd6MElGUWJiSG1zVDNVa2RMb1dURjFSMF9sbjJtR1kxU0hHT2o3VHl1YnQ5d2xLVW5nczVMTWhVcHo3NU1LR3F6UkFnWXNKcHVKUVl1RVpKeGFPSHNmY2VwakdrcFdoMEtfWkhZUEJESzIwOFVqb3FqMDdlVVVueTBaXzJrNXUxTjQzWGJ3V0ZvWVBhdndheW1MYkhWdkRwbzdwMU9JT1IyNkt0SzdPeGlnZ0ZybGVISWNaODFwQzRCdlNzRnZsY1BCZEpHLTZxWTU0Q3J0R2xhaDRvQWplUXgxWS1YU0NLNnZLYUIwWnZHc2lIajhRQ0ZURjRuLUJqTWIzWDcycDJ5Q0tPRlpMRk5qcVR1aHJoYXNnMi1pWTNOTWdwVEQ5eVBSdjA2X1VpcEVfYjVsQ0R0Mmx5QU5NYVpZR1RvSmJTSVhBcFlyU1hEM1dFWllhTGUzQmFSUEJUYTAyeWpyVFZPRDRGNHRFR3c5MkZJZThOSk5NYXRXMFhPSFAwVWxKTXlQUDF2MVdvOUh5aFllaDFfdWg3SlRLcS1hWnJjOS1Xd0ItQXBKTHBQeGxmRzlGZkgwdjNwSTl0Z1VndWJmSkJQVjMwNll2MlNqQ0M2MmVYN3VFTUgzcXQ3TmFYcFVsNXZEVHpfMF9Vc3VlWERQcDNqV01XQTMwenFaYTRFT0dXdElMb0tEM1RjRWNVcmJONGV1bHFQSkFNcWdWdmk2YWRGdTgxU2w5cU1rVVUwaWpqMjZhZDFaeVlEUUZtWlJ4NjJYUW9ZdG81bXJ0eFZhYWtNNndqbkVPSUdJaHhBTnJoX0dNVzVxREhzMEV6TDU4b3lOY0Q5dE1MUC03N1FCbTZwUTFsR0swMVJ6Y3FzTk14ZzRMTzl2ZHQ3NFpIdEhMXzA1TjF2TUt4TE5GbkdhZmwxN1E0eEM0Z3NQeXpYdzBjcklyV2tIQlNQX0NoWE94SmZORWdyNjJOMXEzQVJZa0U1TVlCbzctM3djb3dNT09GcTlrakN1ZGpoekplRjRTUHdfMnFVWVhZRTZsNXJTYjYwUFlFSkJxdW82Skh5ZmdlOXFJX0Rzdmg4eEY1STJfLWtLT2pxU3FZam02NjU0cXVES3phQ3JWLUJFLWtQNF9DOU5OQ0xTaEVWUV92Z3hYdDhzbTRWNGNRMElDRmFzaWV6VnNuV1QtYmRQTGxBT2RqOS15RmhYVTRUYVF3YnZqQ0E2UHQ0aDNVWGdnQzNqWU5IMmJtRGpYSzhFdFJYRTV6cmJsTDRKMFZ1OGxHQVBZaGtOcGNOakNrNWhSSW5jT0dybE9aUk9jdTdSeVczR2JWM2Y1MGJKN0xLNHJjMnJCMTZuemhBdk41WXlydWdwQzdCOE9OR3NTY25ha1V1alJzRzZGYVpydDNzTDJMOW5RTUNoNE9INFF3VWpKWFZKUFJ2MHhPTF9jVEQtdjk0QWgwbWdtcFJ2Q1dhUkl5MXRxeDZHTmZ1R1Nyb0tObmtHYjRiRE1oblpZMmwxQWluWHlCMG5uRGlvci1EUmo1cjhRZi1iaUR6cGhTallzZTZrakdLR0ZObzU4WjFfaGxEaGFob1pQX1lRdlBtWi1Tb2pNaGhMRXZqMXEyZzZWRVd6a1FDWTdIWVEwM1Y3cHVCVm4yaXM1NXpBSGV4cGpERWoxWDgxWU92bnVTdXRhMGx3VkFEMkRoNjZDcmM2VVh2SEtUZTBCeFlsQWdVdkhQc1BkSy1OdVk4S3RaeGNqTWNDVWM0OVl6VW43RVBTamFNaHJ2Ni1mM0pwc09Na3JwREpLM0dPTUVRMUV4cnhYV1lGaGtLaHR2UXZkMXZCVS12b0pRcWJveU9vS1hMM29Xb0FRVnljWlR3Y2laeW4wbUtkVF96NDNFZGhNcDNKS3N5blJ3OVZtSzk3Q3lldGl5LV9HaWVMSngtWDladVMzOUdNa0YxaFVmYmkyc3FJZGZMZ0diem5uMTluTlRVUDlOR3dhaWhybU9Ib1lZeUJ6WE4tby1UWUxhSS01bkNuQ2FSSW9QTF9XSVhyWDZPSzdZU21IWjk4a2xJS19JNTlPSXlWSllrMVh6bGVwd1lPLXUwU0x6bTEtN0dKSE54RGVOMlZhUEk3TThVem10X0x5alliWWxocFFJQnNyUktsMmZZeExKaGt6Q3NjcWp2bVhDemRLVDNhNFV3NDJ4eDlsOWl6dFQ0UmtnV21fYV9YWWk0b0gwdjNCUXRSZ3NfUTBPaGo2T2Y2dEtyZU5XZmcxVDRjMk01SERJd3UxTkl2QXBqNzZtOXJWQkdPWTZFUnhfa2Y3d2twb1g5dWRvcjBCbEx4a1FCc0lwZXpUdzc1MTBncU81Nm1UWXlBUzFCUVdOY1Q2aWhfN3F4ZTVoUkVlZVB5YUpFMnhqR2JNWGg3V1hGYjN0ejVWVWJOTFpxMjBiM3E0UFdkdjJXX1Foc2VUY0JTRDY1eVFPYndTai1UcVpNNi1teUZHb3B6dVdfRWcxU3pzNzRaY3RMSUxyN3pMLXRyeC1WTTVfVHllMVZXbG9ZOTZVYUJyUktpQWU1SVhKMlBQd2RIY1p4SWx4N3dBRXdueXVOZXA2b2NKcXRwZUJ1elB0LTFaX3UyWjZrQmR4V0lpYlVEaGxOU3AxM1NkTGw0Z2hkemVqZWFaYVllRDVtTGltWWJ4dEhsQ1ZiTm0yNU1ZbDYxMFU3QlZnNVJJSXB6VUdmZ2Z5NnpJRzRLQjBMR3BISzNhdHRRUExvQ1VlTDRYNVdBUUFsb3BRa0RKOU5lTHFGdHN4cWpZaGJnZ1Z5am9ScjNPOVhzYzlJVEtVaXJaUDlyTVl0eFduT0tUck9YYVk2WVR2Wi05QUhpT3ZfdTRhOElTS01DVng3OUlnXzdqTjFfREhjdGd5cEEzVnpkbjNKdlJJQTlfbHZDV2dTSS1NUjlPQ19xekhIUmU5dENqWklDVzhwRURSYVhZOHc4UUQ0bXJicmFLTTNsWmtTNUF2NVp2WjFRTDJlZkExbXlJdmN2czhmekxRUFM0Nm0xX3ZPVzcxN05ydDQzeUcwbUZxZnk4aExaZEUzQ2RkMzRtVVFXWVdqSkdvQXZ0VHBXRmpwWkwwOERjQUd0RzVzdkU0Mi1WWjRqSVVYQ2JsemZaczl3N2VsNThvRkJLUng5dUJLby1PWmYxTVloVEZrSlU1V3YtUEVreXRPSVpfU09nZVM2RTVMTUZsOVpZenZ0QkJuWWF0bDY4NGpEdWx0STh4LXpmSHdwUEFwNk9CQVpxalk3S3JoSVJuVGRoc2Y1VUpCcmtvU1JGUFlaaXE4RjJLWHA2Nm1PbDMyRm5RTVprMUlDVkxiYVpnUFlWNnl5UXpZdEdhbjhOc3BFTG10RWkwMVlTZE1ySUxkUF9TVTZwXzJ1NU1oY0RPMDF0Y2hwMHp6eUVfTVp4YWJodXpMWUVIeXJvYl83cjFKdWNjZUQ4SlM5T3JBdEk1YXdsbEhGSFRRWExOWGJuTHdTQ2JrdHNiTGFoa05ya0ZXR1RDNFRzUlBfYTlHMVhFTE5DRkhaMVhvS3NsQTdMMzFGaWpyNFpEYjRQeW5hT1BrSlhCcEx6MGNLN2FmeFVxNWlySHhZNEQyVkdNT3gwUmc5UEJJeE1vdzN6TmVGZ3Y5dzRTdkJ5VUpQdjNGV3huX004M3g5dldiWFh3bU9LbHlLNVpWQi11LWxKVno5Rm81YWRfVEtwUkxqSGdNWURKNU9Ka2dhaEFQMmhOaG9lb0FicnBPNzVYT2tYZ3pONDdwVW1kdzhmZV9FN3ZSeUREZi1LNVZNS2UzOXRPSi0xRmxtemJVc0pET0lScHp5WVl0Y2Q4cGtPU3JQYnIzMWdJNFRIUjJHV2xwZWJCZ3VhYmppck9UTjI1Zy02MmRPWWVKNHVwNjI3MjdnbWNQWF9EYmJfSFdrTnVLaXBmdkJ1UmVNN2J1WE9LVzg2bllHSW5ZNzJZZ2lvYVpIaEJnY3pHbktuUUlkWTJ2U3NzQ3E2b1FSUGJqeHRQZ1gxT1h2bXNucmNBencwN01ULTNueWF1RDBfNG90RGJueF92dm1fM203ajBwcjBGUWZ6NWs1UEVNUG1sOFVhenFxX2xEU3djV2JOU21JbWF3OWt3U2NXN2xrOUViNTRLRTRhaWt2bVRxXzRuN3lkSDNQblI3bC1RMXE2X2k5VWdHUVFfSmk5UDZQbmszQzd6TTVYbDBpYllEVXVUV2FUdlRrX2ZjaXo0VUJXWkV1T0lLU2xZaHVBVzFQUTJPU3NiUWxPbDU4U3ZvTEYtS2w3TmNkRXRBODJVWjdkLVFCN2xKNWFCcnd0Vmx6TDFxX2Y1UGd6a2NtcW1pLVViM2tUQ0xlNjJYbzN1MmFvSnNTQ0c4bXhwZkJ6dVFVVkk3WXdTa2ktWUtNUnlJSGhuOG9xRDNQS0xMbHk2LVZkZy1VREE1RWhhLXA0TnZYb2lLb3ptRHdBZFFpeG1IcnJTdUEwWmh0eE14N0FSc0pqc285blZKR1BOSzhCeTMtbXQycnNOOHlMdHpyRXdkUzBtLW1sRHRKak9CWHJ1NmhWOFBPeV9vSWVzYmJtWkcxSk96Tkl5YmhPOWdNakpsNTBSQXVmcW1sSXJpOEVXQk9vdzdVT1RKQjgtTkR6VzVXdWNiS0VLOGotdWtSYXhhQklPcTJBTnI1Tl9hTEF2RFpmalp1cDl1RGNTc2FUOTNWR0dmQlhHX1BYRlhGWnNtd2NnamxsQWN3bkhCS2V6QWd3SnprRXpFaEdEOFhQMVh0dXJPZHh2YTRyd2ZtVG1yM1pHVWFmY0tTUm5malpnVERSVThVRFd4ZjRwMjB1T1h5RzBBUzlJLUF6WGN0Nm5EOFVQUlB1WDQ3UG1fN05mdWFVTkt4SEZ2RFdOdWYwcVE1OFlvZmhydjJlRDlzUFJFWV9CWjhXWm9IYy0tbVZ5MmM0aDdvTTUzQlFKbTQzRzNkaXotclRwWE0xUDExakc4em5XU3RBQkJxbW40LXdKVVl1UGpDV0VtY29qdGtRZEZmcjQzRUNqTzE1SDJaZGN6MkphZmpUcmxPdWlQOG96ZjEwa2RTYjBURTFVOXI1dHRIU0ZzOUxPVlZHVjJnQUxjUGtMU3R0clgwMXZHMWZLS1ZTRVI2TzlZM0pZYW02X0FwU2xONnlRbmlqM3NJTzdKc2xYdHhaMzY2bXI2Vnl6WmphajVVODlJSjdJUlY3eXBkOWtuZy1RRlZMT0FhRGU1eENvZG1jRjY4ZGp4LTZBVWpQWnBHOFYxVG04OXh5c3BTaU40M0lmLURacTlaMXFjSXNDOUJ4XzlxTHE2S3kwNTIydnBKWkw4NEdCZElXM0FuUUdKbFY2dkRXbThpcF9LMjg2NG8zcEg4UTdFWnpqc05KZ3p6RFU2SkU2Y2psTVdhMDR5dkVMa2dnUm9feVM1MWUzam1BNUFFdWpXLUJ6TXlzTjVkeUpiZC1HcnN4VFltck1wMWI0dFNhMXV1ZHBSdWl2cUFLdV9qbTBvYTA4UHZqRjJyNjRXYXZQZHVxcUs2VGUtMDc1RkFQNHFEZE5ocmpJSHpneWEtUWowY2NCRWtZbUo3di1mUWxneUxzaF80bHJZQmVyWnNCMDM1Z2Z2b19CakQ0Q1VWVWFTRkRya2U2OE41N1prblU0UkZXN1NNQXViaE93WjlCd1pmT0tuajV3bDhfemRFTDVLVDBQUm5IejRjQk01OTZGNXhleDFORzNqME80Y3JDbzVod0xMMUVwMnVweVlULXpfTkdkT1MwMG50bGt0dnNKMGFZSURuQy1SSDRYcUdBUXlpY3hJVzNnTXh3LUNvYlIyUGdPa1dLTVBJN2xFelNLN0VKcjZkZENmblhHRF9scE9HSXgtUTROdjFOU3E4VGw1dkRtdmdOXzZCOEhHbmV5bXdpQUlJZ3NpWWhfUmR0NnBrdWJLVF92aFkwMTI1WWZkck9NaW9keTFLbEpNR3NJNGxqX1dJYVRHQjdoY1dtY0stMy1NNWlZVnJUSktaR2RZbUFobXI3bkZVT28zWFFCZkVVZFpKb2Itc1R6eDdNYWttd2JEcHdQdHB5OXFQem03akI0ZC1yYmlncDI3azRTYlVFOXNFWTZVeVVJVk80Y2l5R3ltZThpOEdLY2dSWXJ3YTZmVlItTnNvcm16dmd5eGZVcDFGWDZuR0xNbE5VMDNEblBVU0JLT1RWTzVnM2JuNG1DNWI3anBVQnUwQTk5R2ZkTEJGaXg4dURwR2NsQm51TFhncjcyRFdCRmFKeldkZXNZbTlaLWk0WDBaUTh4cVZwdGpXTnI5Sm5sVDlLeDVKZXdRSHZkeXRRdHRaTXc3TS01Unc5UHJreklWd1JPZE5PVkxwRWl5RmVqM3YyZmJGRFVoRmg2ME00NWRMQ0hqU0k5eC15dDZ6LUVtQlBpdGtkcWpUT3hLam1qVV9WNzIta09tVndhZkY3MzdTcVRKa0lpWlVic002bEJoQ3Rxd2cwNi1DelR4U1pMYVgzOF95dE51aUY1S0JfcXVwcU54SGJ4TTVZN0l5SnJUcGR4MG9qNFZzWDlxWkFjTGxCZnRNaTFUSTVLMkJRSERSNW5FY2UwT2J1SWpjdlNrcjNYMmZwUWQ1cHlLdnBXcXpNbnNuQ3NsVnYyWUY5ZDZHVWFKeHlfQ2MzRVJqOXZIMnRJb2hBckh6VzJlN1lNUTRyQnducnowOXc0aWNnNG11TDdVSnVsVnJLcjdJS3FDYjJyWFViTDBIRUVrTUd3T0pISEVnVWxlYzRGajRNQl9ZNnh4SFJuekVKMVVBRXVTeDJaZG9Bd1JsSjMwRHZYTWMxcFo0NWktYXE5eV9oOFJxaUZSUlQwSktjYzFpeFA1Y1JWRmVpbFhKWXN0cDV6X1pKZ1FrSTdCQlBaR0M2bkZ5RC11LWh4MzhQN0IzQjdUUzdoWVlXdm9ETFpGSkI0a1ZGRUhvNlRKdWNDVlpJaEFMdHlfN3dreFFxdU1mMFNOREQtV0FPWUJkY3JpZzZmYnNKSVhvc2lMSWNDM3hOOGw2X1dzNk1UMXdXODZkcWRUWkJnN1Z6YUlnREJ2RDRNakRLdjk2M0k2c3ZmeG5FWWNEQ3dDalo5M2JwUGRJd0htZEY1ZE0xTGZVLTExMktBN3dCQTJWYjU2cFdBMWk2QXo3Z1N6RXhQRkZvVkNBdFlJUnBFcHh5SVBaQUVHV05zeDNpNEk2Z2lyZi1hUmFWejFXUURCemd3ZDd3TlpqV2xrRVlyRFBBZTFPVnl0bU9HQWlGZmZiQWVPaVF0V1lzMHYzVGFTOGcydk9peXRvakE4ZzM2dDQwQTB6T3pKYnlzUUM0Z0hjODJuVDdQUDJBTFdPU0RLTmxSX2M0eHFWTkxjdlhxZHFBNmpVRlBUY1FONzk4U1FRbGprcmd1bzhEcGxTZTBnODl1VHUwV0ttcFltSFA0WEtmeXRGRWlBR1FDSmIwZUl6NVZsTlAyVnFiRGRMcW1JSzhuNVlNSUtDY2ItY0FUdGFoRXU4QkxQcVE2VC1aa2t4MF93M2RmZjhVX3ZCZUFwS090SERMWUVqcTBnVktxUHhaUWczY3RJS2oxdXJPeTIybnJ5aTlnZWZVc2QzZUYyMnBCQkx2YWVWSk96QUZndk5YdnRiTXFsUW1CXzQxNG1tVGVtaGFlNktjOW9KRF9sLUxKWDZPU1FISlo4MHQ4Ql9VZkdacFZES1NubmFmMmY4UHYyMy1EUmlGNlNyQ0ZKN0d4TEhUNXJSNzU2MW1YUlV5Qy1leWtocVI1ZFZSZDZhOVQwSGY0TlZSbjJiaVdxeWhPR2VUa0hKazE0YllOUFdYTm5XSHl1VTdyNEZoOVVsb2lES2xIQjQ0VjlmYS1YMzE0c2VHZHRqUFNLdWhFRHBMeV90VU95aWU3aThJaGNIaE1XOHlFNi1Oa0lZSnF4cU5EbjAwdUkzSEhEUWtGYzFQV0RYdlVIcnBJUFRJcFFBQ3c1dkNWT2JpUmFoQVBJM2tFRFh4ZkY1S2VLMXRuS1hsZWRxQmRIc3lCUkZuNnp6T1p1UHdOWktKNHlYVDhoS2wyamQtNTlqdWpibDBmNF9WdVJFdmVQOW9FWWtTOHU3UmlBVEVHa1lPVkg3MkZXTzBzLVNJWGVRRkQzX3VvWjdrM0xjSm9GVjlXMDZrQUVWY1dURVZGRUlwamtNMy1FYnJSUVdMcy1heWVYQkNFSUxsQ2t0di1LblA2N0pyZFV0bTI2cnFlVXZ5MzdTMTBCTE53YjRiNHBvREhMS2FveGFuZy1iRjZUb29PR01UU01MWXUzaUlLc0R3Wm9kZG1WR0xyQ3FxNWJJR1BFZTNoMnc1RjFNZ1hyVEU2TmFubXpKckh5eHVPc0VyaGctaEpGeGVCcWE4WjZZWFduTXIxNDhLanNoYVAyeVpFSWV6OG81UEc3cWRWaHFRenhYT1c3eEQwSTUycjBvbkhxM1hzcV9SOGhFby1UYVdPbmY1NW1YYTNWMk81LV9XanZxZThWdzdwTUF5dG95dmh2NTVTVk9xcVdkNXNIdGhITzd0OWlMdDNFYVMxX0ZnaU8zVmVENmlvUVBNNjZsWmhaYkpZZHo4b1RFeU9SR09KbkpjSVpqVm1YSlJIbXF2eXZsUlpjdkVMM19KR1hEOEZGNHlBVE0zaGhlNDN6VEJVdk9oYlRjckhNQTRLZjhWczR4cU02QWFsczVBZzRUbVZSSnVLLUVRWFZCaFE0TEpBbEgxVXZzN3lKYTdLM2hsQlZEMWo5WXRWS2htMVhPNFJySTNrZmVxYmxoMTRHQ1NEdnI2OExyTk53SUZsY1JEY1pKalBOQi1GWGhUd25PbW50ZVItOFY0UTJVa19tczdTTm9ZUElWRnJqY1R6X1ZkQ3dYRTFmMjNocHpqQ2tnWGlsSUlNNEpNMkZmcDNTZTY2c1JHc1RXXzBBbF81R3Fqd3ZfZFBYWDA0RHJNMFI5dGljTHhLczBnM3hkSXF1M0huamxBRFU3S0c1Yl9NUmxUdWJCQ3pEamtJQWRRUEFwcUhaWktnODYyLWloMDE4bERfbFViWEwyMGhFNFBNbTE0eEg3R0dPQ3FWa1o3RVU4ekd5Yl9xWHV4RF9LZHFLSVR5eUc2WC00MHhOeTJ1cWpDMmlvVVpiM25Tam5kZWFiX19kbC1jMDBLWkU4RnhTRnRMN0RreWxpTWM2Yy1VQXBhUlZKQy1aa2NBaXlPZ2NBOVZQa0x5a2xlcGRNYXY1Y1J2a3FvTHhmS3RMU2FhS0taWEdveFd5OWp2am5KZHZfMmZDTXlUeFdOUWl6MzI5NG9mNkNNY09sTmc5VW5iaUlHb1JVX20tMHQzamNRWHBrZ0pDWlMwcmQyZ3RGVExYdUVlYU9ZTnJjZ2dPWkVQMkstc19kNUlCU2JqNXE1QS1HYU9hbzFuRmdFOEFlMDdEVXVzeTBYeVEzd0cxb3JIOXUtSUxpSHpyd01Ickx5ZWkwYmpYSm9HcVBuSWd5d29nWjdZRmF6a1ZSTGE4OTBZQjlXR2p2SEdqZ19yYmVabWRDWkFoalNiTlRveFN3bGkxMnh0bl93WkNWVkhlNzUtSGNkTHZHaGgyekwwVjlROG84NFI1NUFKVV9fNjI2REMxT2w0cXVLcEt1Z1EwMHowZElPbzMwcG5IT3hqa2xlcGRMM0dyN3dHNXZsSUJKbXVWMlBReC1Hc0JmX3lYbUhxOXBZZ2RJeXl3ZjNqSjlDcmROYXM1RGNseUExUS1Sa3MzdWtyU3dublN1ZE5OeTNCRlJ5ZkgtbHhWQmpYSHQxUUlQM2JLbjRvNmRPSHNLclc5XzRPVnBNREQ0UjNMRmpYNFM3MDJ5ZmdXSkk5Wld6TDFadk40X2t0Zy1iVHNYOC1zdzJfa2Y3dXVldmJmMkYzLThmM3lvNDNUZ2dQaDU2TEZjbFNidGdaNE05MDRTLWF5SGQ2NkhVbmU5T1Axc1NldGdKWXdZZVN6TTgzY2FUUXVqRVA4bFhEQWxKZGJ0MTRhZ2FValJkNlBNLVVIUGdGUmNtRTd5Y0k4YzNSdWxrVkU2Wk5qeUU4VkNnaFRoN2JMNTJNYXhUcVMzQWJKNUpHak9ESkk4ZTczV1BFZHZPZ1FPNnZvak0xNDFnSjFtaW9rTFNIbXNwVWRhSFdIdkNkc2VHeTZyZmJfYktmeGJGS3FNTEN6T3VKbjhxd3hlNUxJQms2djJCUmNzM1I4ZnI1VjBSQXB5U3J3bmRuWExFRHdVRU90YzdwSTBqajVNeGFJaWxKU1FMb00ydXpiWXZaVE1INklXSndEdU1hNW04MlFCRnV3TWFZRDd6WmNwM0RGb2dFc0N5YnFjZFd5SFBhV3NxQk5GSDRuYXdwRnMwQ2xZMWMwbGZQR1RnTWZJeTRxRnV5U012cHNkYWZORUdBdVFpYU5zRzROSnNJV2NYbFNFQ1FsLVhRaHF2YkpUWE03NldPVTVld0RneGRGeG5WREVhdFRlQWZZaUVEN1ZBelFNUXNFenU4VUx4VmI3RWJzX3RsUW5hU2hVX3E3RjNUVEV3VUpPdDNCeFdPcWFCbmhNdUdOdU5CNXJabFd3YVhrUTFNdGxwOEFmWTBXSF9kX2F3VXdQbUpCQXFEX0xKRncybWVBS25OZl85NlZiUW5iU2J1ME5uejlvTnVXVmNMcWZIeDIzX1JfVVE5enZibTlkaGlSaUxSMnVDUzN2d21XS1UzVG9vbks2c1NpeWNmYnh2QjE1TnFnN2l4UUV6M2U2emVkX3pQYy1GdF91ckRrR1dOTFJ1d2Zyb001REQ5XzQ0UFVvLU1SQ2NiVGp1emxqQmVjOXRUc1NRdnZWVnp3WHdNY004Zl8yWEJxcU5OVl91b3V6dVRPWkFfbkNVTDV0T1dFSXZIZmlDRWxJV3lrS0U1TUFUUVlUY3FRd0VwNUlBeDFDOXdudnZtVk5NcmFFNHpDSDJuZllsUGNIYWpMUGlXcHpUdUR4anJGeFhIbVBUc1JTM0Q1YU1yTmM5emwyZkR6ckJsbzV0Y1pPT0ladlR4X0ExeFA3RlFnNjMtbUZzTGlRZG16NzM1bWVjUEFmdkROMnV4dWp3YXFITGx5NGlLelljVVRjbHFhYV92X25VM09ESUxkcWt1S1pCZFZzZGwwX19YeDdkSlFHNG5nN3kxU0d1V2Z1NEdRRnV3azE5b1hJM0ptU0c2WVZHSW5wSUlNYjcwSy1BREliMlZBWjlVaUloMW1HNmpUZWRHWHJtMzF5b3Jnak1PUlRERU1rYnZCeTFaazVrR0E0V05aSmRKRnlSQUtXT3VNbVZOVXRWcTFWRHpkTkpNdGhaWUZHQUU5MEtBZVlaZDdmaFRSZlY3ZlFYdzhWOENmM3IxdmdMTXJyZ2JSOGwzeUsybFBLMnhMcFl0cVpRanFaREpvSjlwUHBlcHEwRF9Dc1JEcVlDVi0zNE5GbldXWklZQmtmZTRPSGFFZTRlXzNQOGxNVTFKUWlJY1dXWmJ1ZUJXSnlpNDQ1b24wRm0zVzdlYTRnUUJCN2c1MzU4MUJBZW9ZQVRUYnFFV0J0LWU4OS1YMDd1Nk1vSDVKUU80OV9kSW0wNU11VVlrV3ZQODFHNDMySDFPYmgxRUJBNG1WdHYtM2ZqeGVDRldiZHVzTWxxa3RYbXVodjBEVWdmWGh4OEoxS2JaMUdjN3cyT1E4S29KZXNGM2QyTzIycjFkdHRIamdmbHBUZlVXOGFaN2hPZ2otSy0wRHg5dXV3ZmNVVWMwUnd6bkNMbVdqd0lnZ2NfQWZJbVRpd1ljZWgzQzlpVnpLdkcyV3BfZHpCMjgzM3YycGI3SlRKbmFYT3VSSlhiM1JQS0pONGcyVXV1NnNYc1JBd2FlTnVtVVVpM1B5b0pCY3dhZFRsbVVrQ2JNcjJMQzBzYmZkbjNMOHk0bTd1UGg3VTJ1RE5EaGk1LTZaWUNYZE5SRVNzajVrR0QxNzJoUHRSVEV6RzhUeEN6Nlp4dE5MQ004a3pHVWtjS2FLeVctZFdaaFVWRENsZVdnQ3F0NWdvNUI1OEVaV2RJbi1SRTRxREZ5RlBDNDg3bk9nMUVyVmZBN0NHWldha1F2QXN5ZUhKb3dkc0RrdzZIV0x0Y2ZwQTJENHEyZ1Z2aDdraHVNMmwxSE5DdWxNOWJSXzZZYlhuTGlCMzIzN3Zjc1d2bHpBVmJCd0J3WHRQT3RGWEEwc0V3c3Qtb2N5V3Z4WFNsT19kdlhRNUdHa2pLcjhFX1hzM0dvZmlqaHpsZF91OWFROGNTek1XbE5xRGNPWncxdncxNUtaeFNXR1QzcDJ4S1VHLWtSZW1Jc1h6VW91TFdma2RCbk41Vk1tUTdJTXA1RkFfcmdHWnFwVHByaHJMSlVaeTNZN3I4bG1McW15Z055a2FMNWkyVEpIT3RWVHB2eHVzck1LMnUtSzdpbUJVMHlkQndFaHNOS1RWMXlGZng4Q2JZazJTeUo2QVlWeWZLM1FhVEdqb2FFMGxocGNPRUIycmpfUDhFWHAydlJ3TWZsYjBtc2daYTFCOE93d1BXRUJMdlROVjVzUEYycFpUaFlnM2xWVzFjSlZlTlBLRTJfYU1zS0p3UGVIY19YTTNrdDBXVkpMbTBnZzE2ek5EMjlsaUlfNTBjOW1VN2NpVG1hNEd5ZzJtSkUzVkg3VWxUanVkRldmNTZpSEZHNlJpU0FqVUFtMmtBTkNGMjFyb3ljVUhFTGo1aVlQZF90S09vcmJvRDlWRGcweDRDc3BQMmRKZWVzMVR6aVMwNU5qU096cnd4dG5qMTBBZ3kyd3B5XzUtbVl6dVJvYTUtNXVPSFhDRkFNSW5QQ2doakFudHVYUGw5REJRb1ZSMWYwUS1NdnJWQU1Qc3pfaXMxc2xZaTlFT3NDUWp1R2hsNGlxYmVNWWRhbFVZZllGYnd5dktaTGNlZndjaVdpY3EycWhpM2FxaWQ5WkVwVGRyR0FvRjItdmd5cWVsSjlRb2NfSG8xRldZdjFrVUR3RTBmQ2ZlV1FteHBFMTQyYmlZNVNnV01CaE9tVTBKWkt1c0hCV3B1ZWJ1TDVlc2RHVEJwRWtpcEpHWmtQSlB0YzBvTlJSVU90TVdZTTYxbXZaXzRTTFpqOW9kZ2U1akMwMHBzSHVYTUExTG5USDZ0R3FnSDlTd1Izd08zOTNTQnRMRU5oNy10UEVEVWc0dHpJeXAxTHQ4R2dWS09DTl8tc2RCbnlpSjJaNmYwSThEMXVPQnJYN0JGb3E2aHlkOWtMWnZiX2E1VHFUdzNKZDJCdHRzOHBWS3hhaXFtTW1WUmZPbU4xYmRJSHhlVUNCQzdXdE1LZUc0M2FNLXpYZDBfUmI4MkxJTVVVRDJadUxXb0MwUGZzUmpiYWNpOVhBOFlBVTE1WllTOVh1YV82NUZYT2xxcl9sT1RuUjd5Y0JZY2J5T2tIeGpIWVFmRGkyQmZRV0NkMElXaF9WcUxNZWozT3ZEUW5FZDZvNEU1N21FQ1lQUEJUSkFIZTNHTjU2UEl6T2xLNTRtVV9USUNpX0JKTkRXemJvdl8wSnVEWExZMmUxZnhCOXNURmc4c1hINUozYUhYY2dpYUdSaHlnMjRKZElJV3dkcXFRbmlLZWNfS1IxVTJhbEVqX2xPQTNNb3FadHk5Zzhnc2RCMjRmQlRLOWJZUnc5eW9OVWhrSl9fM2NxNlozVVFvc3VrWklreDJwVlRoTkU3THdEQ2gxbnVRYlpvUlZrN1NKc1pjWkZ1TTd1SUJRWUNVMGRIQzFRS2lublQxc3R5WDduM3RRLXZPWGRsSENaOEtmSERpR2tsemdKUkhVSFUwdU9JQUNuNGtUbkRzN1ZrRGtEZ2YxalBhYXVYLUR4X19Cdm5oWXIxRFp5eS01N2x3SG85c21rZDFNcGFUVGRLR0cxOVktUDh3MmcyNXJCcVlWQjhBZXRlbXQ1bEtZdE8yckhJNmZSSDZrLVhSM2I3WkVlSFA5MV9UTkc4QVZtV1djMUhaMmdYN0gySzgyUzRoUk1JcEItdkxUaFI2QmV4bTdDeXJHSFZqNHN3M0dtZWd0cG1obmJlNEZQRVo1UTZnNGhScUpmYTJvOUswZDI1aktwaURBTFllRVY3Y1VDUjhBVjRYNU5WR3hWdWppOVdYN0gwaU1mUjZHMmpIVkFZSmloSkxOSC1JSENWcVhxdng0ZWNSRmVxNGRqUjNBWjRITm5kNUJBaGlTSHRObkhlM3EzeG93cFduQVh4M0hHeFZKcUozZ0pVdDVtdGcyb29pYnJiTTVFVU1HT290QlZGT0k5eGd4RmZYT3dhYXNPNWxIbTVoQnFWZVczOHlXS1FqYU50VG16TjlITjFrRWFfS0JacHU0d3RGeGswNkdWTmFEUS1QbmZBV0FJalByQ1FjSjJMQ25kS2FBSHJyYTQ3WTI0dWJYd1hPNUZsSVh6NElaZzI3Z3NzTXpVR3kwdUtGc29LdnJrZkFLdjVWblR1WlJ6aklrZzNoZExLR2FMb3RPVmFwZkp5VnNidGh6T0JrSERUMDllcVlOYkFwbWdYWGdoVTZSb05nV3IwOURSMmZQV1FyaUVzbm9Gc21yZWc1MUUtc2JUWjJCb3FqVW1zRnlndjJZdVhpdTVXdFFUNGtKQ1NxczZZVEw0cGhoQy1sTEhubWs3Q0ZKVnNMUHpUM2ZUcVF5M2V6Sno5dUxyUWJKRXVVMGgyWHQtNGwzaENtNU1hQlVVUGU1SU0tWHZhVk5QM3FQUGN6NjEzZkt1WmwzV3NmZVVtYzl4OWhrbElxRlI4RE1aOFdpYnhJSG5CXy1vTnpvcGV3SXZkOU1RV18wQ0hJRlNWWV9lMDNfNlN4SDBiLU5DX1Y3MXZHNXpNTXpqUkc2WXB1d3hMVUQzQnV6cHNWSVR5ZTd4M1RSWFBxNE42aXF4cFlTeWpyMUUwVnk2UXhzWGc1Q0NsZEozN0p0R082b3pTY1gtdDNKOFJBbVk5Zk41WTRURUZCZkxFT3VtdkQ0WXdjd0xuVktKMnVYN3A5MWZjTTUzVVRhTVc4UTZSZ2JFaTlnZjg5SXl1OFc0WTBIQ0REbDE2dVhCSXdZR3IxX1lyRy1zOUU1dU9FbjVpVm9oY1JsX0RrZlNNenBsSUhPWkJzLVM2X0tud2lZMXZYeThhTWlqb2tFaTVOZnBMbUdZdklwdk1MUFViUzBrQXhGTWo3dktnRXR0S09pU2wxVTJleFF5d0tsYnJtUGxFamZ3YnFjRVZkbmZvTFhIYXpfNlhYTE1Qb1FobWhKUWtvVFN6UDFIb2J4UWY4Uk53VmpaeGF0enpxMGtpMjVmUXlTNTlET0wtVGtiWlFqOTByUnpCQ0hVaTZlNWFmNUN2b3p1T2NIdEJmRnJHVkw4R0JQMk1JWi1UTGsxZXcteFpBbE10UVRITEVuUE1US1Q3X0VwY2dJalNDQTVsZHFXQndZVWxJaXZWd3NzNXRlWEswQkNvWjY3OWxyTVdTOEIwUmRwbjM1djlPU1JOejh3TUFTNER4UVV3OXhOTzBrSjdCWHdUM1dOem90dVFFVDFIeWpEcDV0UHY2MVZuVlVDc3pRME1TaTcwakU2OGtnVm9TM0sxaHFxNUhyZlJoYTVEM2MzZDFBWnJzaUVsMXpMNU5OamktNnBpZENKVmxZeFNBa0gyc2VlZ3lGeUVVV2p3ejZRZzBzeWYtUGtCWVFaRGtKOGJsUWFyUjRMdVJGVmViUTZ0bnQtVThmS0M1d3kydzFXMUhiWUZOWHRzUnVkcm03WWVtUDI2eVVNRzNPUEktLS1zV3VEUW1VblIzemNaVGZkcVBkc3ZyRmtES1JESWZfN3hsbDBLVGtIbHEyRjJOTTBiYjlDb281SG5RdERpX1pJZmIxa3pZd1BHTDZMV1hsazdhcENaQ3daWVBLNWNmbHkyWU84QzRuX2w4eDJkLXdkclBMWGNMRi1xZnRtX2RzZmNrNjBrNUtGenozZEJKV0otY2l1ZWM0S010Sm1JMklxUm50MVpJRnNTOGhEcTF3b0ItLXVTX3ZfZ3lMMVRxRklNWE80b1dUZktOV0l6d1NOUVM3UGdCYXdIMHVIemZDeFJ1bmh5enRMTEdMZEtBamZxc3d6R2dDMnV0THcyOVJoZWtLWVNyaElGWFVoNFFjZF9GOUxfNXZyc3pSaXpKekRUMGVkWlhSVkZNdTFsV29zQUs2YV8wUGVZbFI5cC1XMS03eWo3dGJveGZGdzMyd3o2VlNWamJrMHlIUnpRYmtwNkp6QlIwcm1QU3VlU1QtcHNCSWVwSGI3S0dHQjA0ZmJvLXk2N3VSRkxKTHZlcTJua1o3dDFIRGozQ2taVGduUmJ0S0xYRVNkb3RFY0toQ1ZXaXNrTDZabURLVWJJTkF1MXpLMlJhZkJhNzVDNlVPX2llVnAweTBJX1JnT3hEd1Z4QzVReS0zdVZkc2trcFo5VGduUGhXQWlURF9tQlBmeWhQN2NCbFZvUUhoY1lKYWVjQ21jQmtVcTd3cmx1emdEWEduUkFveUp6MXlwZWNjWC1IUnlqOEFFYXhxSkVUeGpWTFpNODBNS0xtRjNXZWt1dVMxSDIxLTFYUFcyaDBfSkE1OTg1cm9uWnBCSUtoaXptUU44YVNndjBIbFlmVi03cTl1Vi0wLXFrNXVQWnljQkRDYnpUZnlGaEdzWGdKU0tPSm5PYkU0QWktMW14NHpJY3FSRmNiWkt1cF80clc5Z2lFX1pfYjBpTWlMTGlBUHJ5dGo5T241ckx1MnJhY2UxUHFvb2VrZzFuWWxCRllTdzA0eHBWSjNGNURCOTBDMHh0SzAyMEtEakpRU1VCZW52dUpsZ3V4WVMwWnQ1N3dKcnVXdmFpYUlIalFBTmRjMU1lSVJEZjF1Z2EwZ1NwVjZPbEltMlY2aTVDMllfcmY1eHJITmVlWjdwU3A1X3c1UTk5YlU4RkdEMHZNbXE5azc1eTdsR3NTMVlwc2stY2RZd0pSek5oa3RPeW5GOFZBNlcxSjkzVmZsa2Q0NTFnMGRJM3dGd05kY0FqWG8xdUMzWF9zdU1JOUl2ZU9jcWFqWlVNcEFCMTZzbU9waHVpQXlBcjNTbTltMTJMMVBvbzVVVDE4V1lEbFl6eXhNYkRmWmRUX0I2R2lNUnpFYVlHSENyQjJoaUhsYXlDdlpCNW9lbkVTUG1rS1c0dFNmOXhRc0R4U2U1ZnR0UGh4enJ4UWxieEM1V2dINlBibzdYdFcxdUpMUEVzVnlwdGRjS2lPSHczQ0d4dXA1NnVNdjhlRW50SGRHdVFERmVfalk5TUJYZXNsdnMtQTdBVzg0VUFvWE0xd0RYUFo0SVZjdmozSWRpbTh1WUVDU0dXMHlPcUo2MEVBYk9nM2ZERW1wbEpNVTBuc2kzREZmbWlqNkVRZ25hdk4yVUN0Z1lKVUUtUVoxU3lHTEY3OVlIRXhFVFRUZ0RheHNIYnZCX2NibWFwNC0zaGhPS041OXlQUmN1ZldZTGtrMUhpODg2c3V6VWJZa2MxTkZRWlBGekdYV28yUUFvUXlCQm5DS01YT2QyZzBPS2RaSFBYRUtVR05FM3A2blo1WVFCMUx4dXJhTVJCSUNqV2lHN1E2cC1XdXRpNHFvNnRvUjgyQlFFZUtqSC1KV2t4a0NoZ2tFaXpUSjFGcjlHRFZ0c3duOUdFcTBKZjJ0aFhKWXZUTkdTY2tTVFEwUzFIa0NlcVNLOXAyN0p3NHl4RTlocmFVdHYzaXl4MEhFZmNnTlNLVTk0WmpFa0R5UFozUXNLUUlCa0xweHJReGRsZ1hSV2ptMEpJSWQ3WmRiT3I0YUZPN2ozZlM2a3EwQk5SVzFBVnhRWXpkLThFWkV3b2w0MFNyNmFfaG5tUUo4WWZvYlFoTDBhZFBfWUNaT3dBc0g3alc4U0lKbGV1b0hLX2hPc2Fha1hkTnJPaFNoQ2VVYjNpNUQxRmxkak12SWFEajJFN1dfUDJodmVna25PNkFhOFJlZ1JRN1dvQkVpdGU4OEszeVdPOWJkdmZ1NjFJaTBIRU1RUm5LQVBILU83RVpMVWdzTmd1ak5YRW1jRmdmRmhmU1Zudko4Vjd1UnNmbE9NcEZkTmZzNU1KUDdEcEF6R3Q0aGRQaG14ZlBseDdqTXh4cnpOQ19GS0tvRDBwcWdJdWtTVnlMZzdrbXkwOE9paTk1QUNMREZsTnlQZjNtaUVUMHRfaHBmWFZrckhCZDB1Qk5Banltb2J6WmF5bW05SFhLTTFVSUFJN21WQWdUZnVUYmQ3eEY5TjlDNUJTZXVyVDJtYnNaY0JtWFNfa3hZTWtSWjFkSkdjN3FwVFBSZUxOVm10UURBVzZWdTZUWlpHNDREMHdRNllKalItNlFiVnNSR2NReGtxR09KQ2MyYm44SEdvMnZCSG50TTdEZVM0RXdLUXh0bVduVXdITTNVT0ZHaWVOVmRvZDhzcllzaE9sM2tvZlN1YUxIUkZiRGdVQlZoaHBFV3dUejF1VlhOd2VVN003N0R1dGJZYTFiRXRJY0hneXJjQUJTVW41dlh4cEhhbVY1RTJHczhEeDhYTmlBaWdYREJfbmhFZEdWWkVqSmd1TDg5VXltR0c0X3Z0cVMtN3hGYmtJaFpPMXBEVHZTMm1KM04zNUduNGI2S1FWcUEyWEY5amJwRFF0VFY0bEgwZWhiLUFyeGtGMkJjbnA0RUdNZWs0eDRXN1RfNEdtNzlFb3V0TjJzSW9iSFhXYi14bURJbUVId3ZHZkFsYkc5ZFFLZ1pDT3Rrb3EzUHJvY0hEMVFUTElpNEpQYU0zc1VFNngwcy00NXR5cEFHQ3N2MDhralVkUW5GbUVTYUhTYzJjSE5CUEFFX2ZzMGU2bm1fakRLektON095RkV5Ymd1bHZ5RTRsb2ZxWkxfcnNxWFlPN3lvT2oxX2FLVHhGa2ptallGNWhiS2FjcDhCNWstRUZUWVZYMzMzWG9OelJreDRnOFNWZW0xVUNibE1QOTJxb3BLUklPaWNJQWpmN2dkS2hhQmZTaE04UUt6bDJBVjBVU3lwMkdrUFRja0NrWEtXUXhhbl9RLWhtZ2l0V2w5ZVpOR3BpUjVSUGxqR3VRaVRYNlJENGZKcUdEQWNMSnEwYjZYZGhva24zMHd0Tmktc2J0RUN6NC1HV1ZOZVVBYThETl9haFNaMXAwT1MwMkRkbGVKOG1ZcW5vYThEbF90ZGZEV0xiNDg4WVplU3JwUmV2WlBJWm5OQ1lQUngxTDdxMVVGcWhfajVrQ1N3Q0VWTEpDUFdzaXlKSzluXzU5c3lUaW9DemxyM2tuTVZ2bDBZSnFYdXF2eW95TUZrcDdGdVdBbWtfYUR4eURaYm1mRGNLNVFnM0c2YlVwVXhPQVJyamgteWtreVpfcmxsa1hLUjVrTnJJMFFKYkw5UHBiWFNtMzZVSTFNajB4alVael9IYmx1Z3J3c2lzRUtGcGw0T0k2bUY1cUNLZVAwWmFmaW1nblhxS0d0RW9wNU9kTHNGRXNoa3BSSWh4Wk02eTVta0RZM0FrX0c5N0FuLUxzaVVWdG5IN2NYNUJPbHZIMVktREFGdzhkQTBpOFhPbkJoWnZ4aFZqdXctbWtHWjBITURVS0RMWk5uUVR1RXNnVEpDT1RQOVc5R0xtaGNfMGRSS1UwQTQ0RFVRU0l4SmxEYzNYWmdYOV9XdWxMY08tdjJib3pvLUhLcTB3blN0dmlPSU9YQ21BRW9PWDFodWROaUJmdktBc2NYTnE1bGc1YmtaN3dDR0xSQWoxUjRSelhDMnVsaUkyZ3lpMTFHZU1VanpoU0h5Ylk4NG5vWGpDODNJcGFTX1FTYl9WUFEyeWhMWExVdnp4SHJ4YldpajQ1a1VEMWJEZUkxOHhhQmd4UzJ6VlRVMF9FcW1WaU9wbjRnTWczd2oxMW5tV0JYOHVHUHlkUENhV2dtbFJTVXNxVXVGQ0dYZ3RNUFN2R09XRkl0LV82YzFWdVlzMGJDNzl3QnhwYy1MdENkRXIweVM4NWZKQTE3aktoclFINUJLQXNneUhKbzFVU21FZGMtTDRweWpkMS1obnZUYzZxRHBXQmhSREhieV9DeXBfc28ycERfYk12eFZ1YnBDX3FIT0dlaVRLSkpTcHdmMC1OdFRLSnAyUzloUXNQYnhIeUFlQy11ZThIMXA0WlcwWVVyWGpJRDVoS2pKRzQ4b1E2THBsaEJTWlNCa0xpczRqNm5nV2ozN0dLZEFNN01jNlpKVFZRdEw4RXZjWWNTSUlEN0liMHAzXzBIQzRKX21NTEtjRlZWWVp4TjlvSkVPZWJLUFVzbndwelVUX05KbjQ4VVZrMGwzeGtDaFlEVDVmMENoNl9MSmhSSzY3ckI0dXk2WTY3N2ZKN3RjRGFfWWsxZlotcmVpSlBRNHhMTnNOZ05hU0FoQ2tqZE5Nb241bmlPUFNhQUtVcWdDbkhsZzN5bDhPOXFhcVk1aXk0TzFlS1hHcmY1THkxV0lNX1luNmcyeFg4aF9TZ3hlcTdRN2ZOYlhIT0Ztd1Ywdk04aXhhRmJZYnF0N2hHT1pjWnVQaFVOaVdDSF8xb0MyUHlIUE1IcEtWcWdaOUNYYkdQNmFhY3J0UmpRMkxZdUZNSnNWRVhlN1gxNm1xMDZpd0dLUWxsUlZxXzZoZGtqUUs2SVpDVTNzMXV3cFlGeHdaTW1CQVVCaG1lb2kzUVItQlhrYnc0RU9nYXllQTJkSUV6a2g3cXFOYmNXNlNBdnp2eXd4cUlQT1FTSWYtMVlSRnZfSDBpYXN2MmQ0R0kxNHpDWXUtXzMwT0hqYzYyX0VMLWg4V29pa2Z3cTNXZWZNMTduN2hGSmZzMFNWNTVHY2U3UTdDQkxxNEVkSTlXc0t1MDlxeWhNWHJwUlZPWTBrZzdsNjYxa281c0VsN1RxYzgxNWl6OU1wS3RZU1RlV1lsd3pnb011clJDNktNYmZEV2poUmlldGo0Z0RkSW9GaUQ0dHJGNjZvU2k0WTE2WkNxYkVPMWVKNGNseWZZWk8zbzBwSk1NQ0gybUlwTVZPMkRueGJSSURIOUxiSEU2VE1qQjYtZkw1a3d3WUVoSHI3UnNaMnFFYUdWMDdXcFkwMUdoTWpEZXE5dGI3Qm0xXzFvcWtsdVcwMjZRUng5Vzcxa0RwU0xPNkxia1RWS2xuMlB4VmdZa3F5V0pHNlZUbU81T21fRWxlblhQMmx0bV9VVXN4MXgwdkxWczR1ejlHV1VYTGZKbVlzZnViQXBwVF85anZyRDlkV2xWc3NKdUMwRlVVNWxOUVUyOEJWSXpycV9ublJVRUJjc3BLR2d1RmN0Mjk0V2xFVjZzNFdTSU5vNG8zaVM1RWtfX1FsZEp3c3JKT3ZQS2M0S05OM1F2cFJDa3hPQ2VwZGpZZEMtbVdfMGxNdWVoVzVmcGUzRnhFMGhjeHFrZmkyUXA1Mk5VYkVZVWpPV2JRZ3UySVVmX3ZBMWpIRW9UTzRQNS1vYTBrRHZaUmxPQldRbTMyS0g0RkhwYWpiNndLTWVIOU1VZ2ZlS0dBNWVJRDRxaWwxWURONkRMa1BKT3FkeU91UGdqMTQ2WWJkZEtQdmFDOF9YS2w5Nm5BV1lfMVo3ZTNKYW9NNzhZR2pMaEV3alFpdHlSOElLRTV1ZmFDZHdYMWNPMG5FQlRnYTZPNzFrSEJkMEpGLTQ5X2FPX2RoWWo0WmVLWVNxOVhkQ1NHNGQzSFNxVGVsT2ozX0tzUGp5dk5ScmkzY0loVmJVWHkwcVoyN1NqdlRRcHFEaW5yMDBra1Q2OC13SXMxcXJhazQtcjZoQUFUeTM4S2FrUFJWYy1WMUQxUVppR3hFYUdrbUg5bF9YT2hFOEtHREIzZFgxNVNOREptRi1PR1dKSlJZNWhqZmpFWVNEVUhmb1NHTElNei01Wk5hVUs5cm42cFBMcWZfcTc1dkZ1TWRISzZhcTl3eWUtQTdLTjZyS0xqMlNfclV3RHk4dnBlbFBBTktNTG5Td09mV2U2eXdFRmFJTDRVLS01Z0NvczJBbGd0OWE4QmRKOVpsUDBUSzZEb0RVY0JTbE9VTWNJNGZXb0lDYkhwc3FnS1d3MUJXc0xGTFU1UnNSZVF0ZHhmSFNZdWs4azFWUlNhQnZnSEh5Uk9NemJXYzhSWmJCVjlQc1doaEpMeVpMM3RldzJ0RkhaM2h2U1A2SUVidWpxSE0tYnRWSXFqb3BEOHFDMG90YkNERnNqdXV0bFdVekgxTXhNVFFGdk1KY1Rfa0swM3NOSVBNTnc1MVlrQm1fV0hiQTNZY1V6d3BPd1JNNnQ4YWFVV2diRUkyNm93Szlhd3BUTzJmVHVncjdzNTJoWTFBNVRpMXRobDM4TU84UGNfeTFyYWJBeEVsMGloTUw3VlRFWmxhUml2VW5JS09ORDdXSXE0U2RHbjZzbXJLWW1LUGRFNy1vZzJfMXVhWkJyblRScHNrd1FiZUVlM09tT0lRUjltb3ZmNkRCdlZlVGtieG4zTHgyM2hwUVRRYlpFSTRORFFHMnlzTXcwSnQ4OHl2dEo3NkpwSEFYbWhkZUpBNWI0QTBYb2JvSW80a1JGTjNlUWlCQlB1eTVsZU1qeEZnVVE0N3Y2M0pyNmtibXpfSEVTZHowOGhNeUozakN4Q3ViNWdJVGhtbVdkQ1lIUjZRYjRtWlowMjhIT0ZCNTl6MkY4QVVENXNwU2wyZmhKZHBtUl9aZ1BsaVBuUm9YNGVPU25Dc2ZLTW95X1YwNk1KRTl3VGZPSXU1ME40cEhoTE9qQXNUX3NCSHBfYWJMb0x1ekpJZXdtV29SRThVR2xWVENOX2hJQk1pdWI1V01lbDgwa09nbHJTNXRMZnNCdW1qTTZXUEladUpjRG1jWlozdXpEeFBkRWdHbFZydXE0ZmpfMFBoUF9uNS1FcEVtYTkzZDFaLURCTXU3Wk54QWYwS1ZBOXVJOXZ1WFNQRDJOVmRpMG5QRFFjbFRCRWhKYW8wM01uc1VGbkxBNVZqQlJnQVV2Y05Cd3ZlYzRfOE9WMDJLRVRxZ0hMZ2tzbkIxdU1jZ0cxYnVQWHF5cmJJelN3WGJiTFViOTFWSkZERl9ZNGFTWGhWR0kyUzFpdGdZOVlsYzl3aFlJYU9pQy1KcTNiRUZiVnZiZnJnemMwOUtiYl9ya214ZjFpWDVRczh0blYybHpSaVB1eExibGx6dmlEYkM4ZkpMRE44VHo4NExMa0lMZHNmdjBHaWtkRThSelU5cFNnMVU5ZURUT0RnVktDRmtzaXdJbEJ5MDRqd0d5NnNwb1BudUxweG53OWhKQnpUc0M5dVRUTmlZeUk0SmxpdWs4Z3ZpR0JTT2lMeGNiRVlXTGFpN2NNQUYtcnI4VTYya2hDYlZZVU1mVGhnQjg5aklmNlZSa3pVSGs0QXVSR1k1QnpraWxBcDhHeHg2M1RacnVXR3ZMa1FKek5wNS1PVGN3V3hEN2N1VlFULU5icVNZRmZYMnZVcEt2Unp0WjNxeTJOMTRIYmdIeUZMYnl6SVVoTXdiNkY2M3dwcnlIN0hfMHp3OGRfb0N3bWVCMVBTQVBUcFhiYjhRZjluQlRXbjFCWlBMbUNVc1ZCaUFYQV8zUWp2SWkwUXlrN3gtb3BGc1E3OFdJUVpadkhsb0NRNWI4UGd0bVdaNUFwVDhPc1dXQU1sYkFzdXRLdXZjTFkzbW9DeFZIOGxzclZxOHVXSjhlQzgxUV9uOG5YNGFqcnZiNm51M2ZXTXRDNmxFeWwzSW1JSHRHd3lvVVZOVW4xZWlBQVpnYzdiQUlnNlBoV1pxS25DMkFyU19lbEVheVFUd0ZTWWxrM2Zjdlo4Z3RMOHB5THY0YkpEalI5NUprM1g4NGJEek5uSndfY2o2Y2Fqb0F3WW9nc3RRZFRnd0pqTU1WaU1Fa2hraVE2SVRUU3lDNUJmOTBCa2VXbWZwM2N3Y3c2cThwMG5NZEdnMjNDc0p4VHNla18zbFotRS1KcHZESHJnVUV4d3g1Z3lCVy1STjdrX2xnaGd3OUw3QUNTbHdGb2pHVzlZSzA4T0J3Tjg4ZEQwLVlmMkZSRmFnaFVQY0RfWXhmaC1qNDkyaGY1SnE1WWtyOGJMZENiZjdBTGgyeUp6UTRoUGREMDdnNW1uNThnT3ZMUWo4Z2tvTTBfMHVGOHBRaHpqenRjVlRaM2NBNkZobEI2a0Zkdk9OQXZVLXI5YkpFb2NOaW5fRTJmb1B4VUxqOVdEdGxaX3N2bWtEVzBjR05fRWRlR1dKLXhLcTdWNDRzck5vd0lCOEprZHE4dUhZXzFadVg3bWV6MHNYc0lNSEFFSWhkSnBJelpYQzVjYW9lTDRfalVxelB3dzJzMG1IU29CSlpQNjNWODhFQVpMVkdtaklwaC1PTkhQeU9QemFlQ21xajFlTVFaODdJSGNhYm1yUGNaWDFITTVvRi1meTZ5RFVzdUJyRkx1dmRyX0VJQ21TM0sxWEZmWVhsMkZCU1ZsRGNpUDJ0YVF1RzR0dHhjaWhoRWpERDVDcEZ4S2dha0lRSWc3VVFBTy1rUTN3THZHdW5CcG4wVy04eGpWRFBoU28zUUNOc29sNF9zWnFqVTBoeEVNTVo3YkVxTzNSVDNTVW1OM3RjdG9LWTBySzBxZmR1bk5iSXNjdG5TcUVPYzg3dWd4VTBXNHlQYjBNOEoyQUwySkV0bXlRZmN5RTBDalkzVjVZMjNlN19UVV83bEk5alBTbnhvVi0wdUhCRjZ0Z2xYN3p1akdJSG82MU5CMHo2MHpXZ01hYklqd0Rha3dPYXV2Uy1yX2RqbEZpeUUyZlJvQnNPNDN5WlI1OGJqcHhpRHJxOWdnMEtJcktBQ0gtWjliTUdxeFBIbHVrb1FGeHAtMWszQjdndE5GdGh4dEJqMng5Q1FBVUJwMFNZYXRhUmgwVlBPRGptMWhLd2FUTnUyNDlxZW0tbERiNTRhNFplaGZqVExkS1RoalFiMktwY2FCbVg4ekpQbnRhVlA2MXdDeVRGVDBSN2RIVHloZUhfS0NYbHA0WDN0ekdoRTg5VDVVWjVxVEZJWmNDR2I4YzM1c0pjYnh5bWZ0aUJJd05sUFRlbkNid3dfQXlOUWhreG95Wk1iai1lQ3NBN1M4V3FaUEp6ZVozWE5iV0ZJeS13S3hFMnVyTTJKRXd4eExXRllwOFQ1cFBQQVF1NG1NT0k3SDlfNzRTcWpMRFpCU1Myd3dUdU1YZW1aSDJuWVI0WmdCUF94UkZENzYyM204ZzRuLUdNNGhibVZPMW1LTllJbDlHdzljbkpQOHpSSWlNbUppWEdXTjktbjRPVHFRWExFVnlKbnlUQ0RCMzFTSFctTThyeUJMemEtOUxOdFZhUzVTWkM1UG1vem9EMFZyY2hFVEZmelhwREJfZGYwNk1aYS1icEpBQklTVWJidi1hM0Zobm9JUU0yRW1uT1N2Rkw1ZFdDRlZMcXAwREJOZEVOS0FiQmJaNGdaaGNEREVoSVQwQzh4dWJ5MjN1MW55ZlowRld0WXFoTTh1TS0xVzVOTlNLZGkwVFVhQ2d5OHhBdEh5Wk9YeWgzVFRMVTh2ME1rbjFRRjh5ODRsOVJlejE5VTR5Z2JqX01CVUJreGYtNnhpSFRVQkNpQmN1UnoxM1pSTkVMNUFzTUZLalQ3Y25zRDJxNS1fdDk4dEZ3SmNQejBTLVctbzFtVnBRSkFjZWZ1ZXBRcUdvVzdLNWIzMWFCVHUwWVc3MTZCeW1pSVEwTU5VdC1Cbnc0VTZtdG9wWWJVRjExVXhSSHl2R050dVVUMlp1MDFJSWlKTVRvYmxoZXlYQkFraEVUaDJTXy1Cckc4cG5oZWFZaE94a2wwZE1nZy1ISlJ6V0RXSHJTZ2tUN2plaThNNnhOY0Nwc19veC1kNkdsX1FwYnRkRGZWaGQ3clRaTzhCNTFQSVN3Yk9aYUhkZHotRlhUZmd1c3p6S0RwZmtSWjN0T010VFJ0U1ZWR2t3eG8wRWdfQW9iRVJSNnBBblRfN1hZQmpFWl9BSVVwQkhmYldjZENyUkN5YnR4b2VUU0RvS0twblJkV0E3cnpiLUtDQmVzNG9mdWhicnNldEdWXy1rT0dLc2FuT0lPbkNPQWdHc2VFb19NTnBvZVpjWmd5QlRlaHFmNXlCQ3FZN2FmM2E2Q0F0V2hfSE1IVzl4cGk1TVlZVk9sRVBWWHZHTFp4bi1xS2hzUDVwM0g4a0VHam10d21CWGFuQVhkNE1HemZtWnA2UkZ2d0VIaFJHNFJQQkZYSkZld3laMW1oSzZZVDZXYnpuUGloTC1PTjJPVnJEc25CSWdEUGVtclpnaVJIVWdnMkk0MXNnX1RMWTQ2N2NYUm1JZUc4NWpUTmRieEhkRkt5UWhNS045UUVBYXhDTGJsaF9FZFF1LWJtcnFfNVZoRmIwSDlocF93S0M2bFlOM3BFR3ZsajN5QzNIYU1LTW8xSVlBTkROcmhGM096U2VHUS1SWmZHeFQtZTNwdmRzc2ROTHE5XzNrdWdGZnB5ck1GY01iMkl5MFk1ajN2bF9vNTFvLVdiYUN1Wl9KZEZfb19JZV9zZ1ZnTUhoTVA0elIzRlBEVjVjVUR0bEtWWldSa25XMTRaZ1hnbFNRRG5kSG5lbmpqR1N0WkZnelh6c0FqX2xibm5BXzZnS2ktZHQ5SXk4aW92cFN1SzhTMmMxRFdqU2xIQ1FMS2tCdWR0REI4RFRaYjZneHJCZ0piNEpFUWp1LV9mUXlPR1NOellNZ01ISHFiVTVVbmpxOFVlQkFlclNnQnEzTWRza0xRNjlRVS04clRZbGszVEVLeFQzS3hhTUx6MmxWTkZSMzRkUDl5Zm9HMnZvOW9PS1VEb3VUaXRwNkdhV29Vdm5jWkdDME52bktJaUIzc1NiQ3pOWFdWbFpDWDhWdFhRQnB4NV9USDNhYi14bUJOUnVQMUZ4dlExNERsanZHQVBOM19DcHhxaHAwTmxzbk9xNzlqYmV0TmtqVHVrUTFZLVVhS1lUVFZOaTlQV21CbWJJTGx6X1FfQ21lSml1M1BwVVUyM28yNHlkR0JFTzZNZFg3aldMdHp5c1hxSVJyV1JUS0g1dG1rT3VwNlQzck03UGotb0NNMURacGZHdFUycU9aVW5hZF9TNGR2V3RBT0EzMVVsLU1DQjlLLUpHZEhyU1NKS0xoODNqM2d1ZDdoTUswVFJmYzVXLWdaZzdiT2xUc2EwcTB5anVKTzAxYmZQdjdQTjN2cTRkT1RabWluNnBJMzJSbzBTQU5NZzlBRkdvR1g3TElaR0Y5bVRMZkZGbkJTUlctaW5taW0yRW1NR1piQV9hNUdvTWxOamhmV2JvLW5aNHZubkI0M1NjZlNwZnI2LWRvRzd2VUZzMHlPUURuM0VvZF9ZcHBwUUwtLWtKR3VlYndlTVk4ZmdtVy14NktjRENjSEl6NU04MzhROC1KTEpPNzVLS0ZqREZGa3JtTGZfTGF5ZTJuekpKVGxhN0NnMUMyWS1kMFJGZnd3ODRHb1JjaGpVS0RPQnlFUDVlNzRpcnVSc2hjQjl4QVUweFpyZlIydmdQM2gwbG9UYjJ5UG9wekVwaXV3N01XZDA0eGhsMWhJUm1haXloRFMxc3R3WFh3aDN5SlNuWE5NMngwdnY5bGpQTmRDTzBiQ1lyZVQ1SXY3eFp0WEl1VW5jaWI3eldUQWZNZHM2cXF6Unp6Wkx5YXFTT0JrQkxJLW82R05SMm9PX3F6dTZteG5tMlJGOUlMcEdxYnRnZHhYTTdScVNkNVBEa1RfVjhrVzdOOXlfTUJuc2RpV05uelo3WndPNldrUlNvbkJPc0licVFVS3NXR1dUZ1E4ajE4dy1hd3hnWVJNQlhrY3lEakt5S0piMjZrWjhnRXNlcVQtM3RPTHdFeGM5cjh1MEtLT1M5YlROZDF3YTRFTWZHMEhFeE1SdmdqQ2N5QTlLa1pnU3Y3eTlNRm1BS2k1M3FXNnVvRHRfX1Bwa0lFLVpqUGhLLTdSa3Y1TmJUQnI1bmctTlR6ekFHc2s2enVPdnBpU05JSWxBRXNlUUJERWNES0c0M1Fsa0N0X3g0VmJ2QW9kQk9lTVJpZWNMeTVtLXo2SVZyME9xX0Jnek16ZW85Wl9xZFhWdFZobTU5ZkhDek1rcEM5WEN2dTVXaVU5UzhsV3Y0VmM1STZXa294QW9vZ081QXJFVVV4T3JsMzlma0ZpR2FvUmNBbWM0dG81anhUUjhuWVJXQ2tFdUQ1dEoxcFFUNkhpaW9XMk1OTXR0OExMTTFpeUMwejI4bWFlcmdBZUxGQ3pTODZ6QnJybXVTWFJEQlhhaW9DWGM3VkoxSEtmSUFYcDY2ZEZ3RjhRUkdUOE9LMm55dlZIMzlvRWhSX2M2T1NiRzJvYkxTOXdWM2RFSUFiY0RhR3hjVUpCU1JXeTdUR0ZhcWdhemlwRVRnejF0NThlNUZhS1AyUnoxMHV3LVRHSWN3VVJtRXhlSzVnbDZJWWdMVThKYmVNdWtpbTM4dVFXaklVQXEwOWhva3RsRFNueG8zRFg2STJjdFYtRk9xYk9rX1dLRURHRG9aRG9neG84UFNELUJWeGJrQldRZEwtTUNENUpzblBGRjZhLV9BdFBaWktKYnZoM0t5bWQwNXVfbk9qTURUdXFKU0xuNUV4MjFPbXAzQW9WZlpNYVlTV1hzaXpOWU10cEVReEMwbWp4aDFFLTNmRm5uOE9GdzVnTXFXNXN5d0ZHRklYcUF5MFlmc0Fsb0ZBTkstRVZvVmpCbjY0b0Q5X1NsNVBwZmxFZVlaSFFRS09IRmxWazVwdUhlZHdpckNfZGhkdGp2TnV2ZlNSb1BLU0VJWGxnV2owRHRrRkFiaXJkd1FNTFBUc21CT2pOYnhSWFkzVG9Qd0RSZGo3eC03VVJxY2Ftbjh2VW9UT1MxYWE4WVRMNm5FNVhsVHpuOW01MEh6ek1Rb2tnemcxQlFLSjRsMFJkbWw1a1RiX2tTRm5XY0hobHp5UGt3RUxvZnZfYnlBN0lSXzV0d21LLUZGcUVsYnE5WW1IaXNrR1BWMlpHTDFmTDFGaU1RSmtxLXNzeFlTNjZJRVZ3b1pCaGw4dUZJbnVidXhFeGJaSEpTX2xQY0pLTnQzcExWazJJSzJpc2duVFgwTnlJRWNzMG9pdDlfQVRERUJ5OHZwWTYyTjIxYk9la1lJM1o1Q0pleFFpVTc5VU1wektndTJvTGlaWnBaeXJ4TnVMa3BWSzJpT2toanNaN3gzNDhRdjBSUjdRN3p1aWM4b2hnbWYySUs5cjltOW93MTg4MlpRNFlETTdlOGlxc0t3dkZkOWZuOERlcWl2cmROQUhRcjFlQTZnN3BVSkpZZTNiUDJKLWpGSnN1azQwWXBFUXZVdGFaZjF0cUpPQlMtWlhvOE00aGEwUE5KTWx0bFhmZGJub2x6aHRnYVF5blR3WHJBRTBSZmtnWjlMaHFtenI3ay16TWEyM0t3UHdncDJmUGgzSmV0Z202Nkp4eHBnVjQ2dVl3UTVwSUFibll3MDFOTUxFTXlQaUNySlFFRWtwaXo4WG9hOGtJMkdRdkh3b1pTYlMtNzFZcHMzQ2oyLVZkRTBNaV8zUnRJUEZyaVVTUERfS2cxQ25pQlduN0IzS1pUYjd1MFFwOXl0VE1TdDNRbUNwcnR4YlktVWFwWEtESUYwYVVCN1RPaDRuN2lFZ0pQYzV5M1A1LVZkQ1VxUHJKS2VwckUxN3AzMmFyWjE4VFFwZE5rRHdXRWJWZFlMZDNvc2tTdkhCMHBmbTFablpMZzNpSGo3SmxFX0VsT0RIOVQ4MXRBS3ZyUFlzZUJsWnZQbEdUbDdRN29XN0tSZ21zVDJHMmlqOW11RlVEWEoyLU9ycFhHTWFURGxpdGNhcmpXR0tjMXFJRWhzQ0IybjI3LUlDX2FnbDdHbG4xUkdCRC02bEZGQjFuTVBWcHJpVGljQjA3THJZblNHSTVRdzFpY0pYNnV1TzYyOHRTMEh6Z0llUEdRVzhPMEtyR0xEZkktX2ozQkphbEN1eEpMeW5sdmE4MDVaWFZ3RUdCcEcyaGFOSlVleXhJeWFSamM2SGdOZzNHXzNIbFItWXhiUjBfSmtEODJwczhfd1VmZTBGOW4yYkUzWEVNeEd1bm9rbWdWbTdxQ3I0TzNxQk1HZ0dvN3ExNFRVTGhndk9GeXVZU3BKdkJ2a290NVptZS02SC1idVYySlVjNENQYUN6Y0pFSnB6QlNmTnk3eEFlQmNvbEN4Q0w2MzZDZS0yeUFGVTFFdjJ0NkN1U1BHZUlyY0RrRlUzT2RWOWxvRVlJaG5nNUdEdDdXUjN1RDJsRkh0M1dWLS1ieHkwSFU4YkZmT0c4b0hoU25NN1hsOWtGR1ROWUVxUndIUjk4eENYeXVlS1ZEMHVlN0ZPNnotY3dxV1NxX3BFb0ZUX0V4OFlHU0EtS1k4N1RCRFY1ODlYSEdMYW05bm43RXJybTdNc1p5Znp4V0NBb0U4YkktX0hRN3dTLVVTc3JuZkh0eVJCVkRMcHRSUDVXWDhTSW5jekUwbTFsZFdRUFRZdDFZTVdld1M1Wk5GWll0SFFVSU9FUzNRVlZ5dWlrcXZQczBQWE5Db1p1ZUJoVVViZlVab0E1WFpDTXFYWVdsQnBUMzRVWkRTV3RxUnRVcXhjZlk5YmpvNzZWNjRfSFAxUHJ4V2NQMFZFVi1QVmhxTE55VmRZd0VsRTB5YnlyWlNsRjRwVlM4VTdsd1VlS01UMnpHNWVDLUktakxpUEU5S1M0eWU5WEdtZjlVZEZjd1V3cXBiMjl0cVFFdXRUNFRmUU54elM1dzFqblUySF9BVmxvNm5LZGJiLWt5RjB5WGZyRXB4VHJtR1VSZTRqMEVzMHBXbU0xOVZxY05yeDJDczh0UDlGTlFxNlptQnJ1QVY5ajE0SlpOdUhvY1ozMmU3cTdsN2tfcWlseEtDN1hjR3lRS3U0YlpXdS1qWUEzdm5OSDVORnAyaEd4aWFLVmRka1pDQVlTUnBqMHVNZ1FuVGNEUkppTTJoV1piaGY0OXBUaUVwak90dmhIbHV0WDdYdmpnTDVZcWtVRzNBbUZVelZIOWs1QkFpUXo2VUtwVVJjUFVNUnFPTG5fbkpMd0VsY2xKUE0xYldZdEhZNHNTdzl0OTMzSjZxdzdENFdNRGJRLVI0QlJubkxwNUZZRUtSY2Z1cHVKWWtxV29xd3dQUzc4b1E1UmZfSF9VbVlBZEFOUXhsLVU0MUw5RTE1TEZqaFBsMUZObFhNLUp5ZVNJNjhlbUJ1NGNWY1l4d0oyMGd6Y2NuSWs5UEtjdXdUWE1IUjVIMmNtZENxRnVBY3lYUlJCaGhGRVBfNjFmbmxnRjMxMFZSdS02c3JmOVhnTGFuMEdtaVNZSC1UaVpmcUFrUjItRVlvdWxFUG9UWUw5OUhTekcwQTBveXhpc2YyaER3Z1NxNDVpbjJaTU9BQnRrNGpGT2ZKQ2kyOVZxMkV5YXVOQmRodkFQeUVzVHJpcV9ydHZPN1phUUs1Ulc3QndPZ0RsY3k5b0ROcmVfRG5mZm9jRUNmc3hMVndab0Z0Sm02eUpoNmU5SDVTOFdMcmF3MEhDTklaR2QyaWNTUTJEMG5oMjh6b3JSY1lfanpIYjBwX0VIZk1iNjhxa1hoQmREVE80ZVQxeGNtRmZuUXRCQnRCMVJYaEd6cW1MRlhTUXJRRWxHWFY0czZxNWFYRlJQNkljdGowQk02VkxHWXVpOUdZb3YxZEVrWVRaS3Y0QUtnQndySWRGazl4N0hOT29YRm8yRlgzY0hWTUpWU0hzck4xY00wekN5SVNGdDNkaHB4TnVsVHY5TkdfQWZmUUg4X3NQa05Ua1R6clcyRlM1RkZpTjVrQXJLeUZRRGlWNEZHZTRxWE5WbFhfOURtLW1Hdk03Q2lPWDg2Q3Z1OEg2c2JEckxFR2VxdVJFSHdxaE9DYnR1VDljczNIYlBsbDlvODhxTkw4TV9CSzc3aUh2a0lSQUc2Qkl3Qkt5ZFo1QUNpVnh0NVhIZ0tEUE05a1VaMTdLM3FwYXFUblk1YWw1QjF3bXVYMkwwSDVGckxxQjJTTFBPUE9zcU1RTlNidGExQXBkai1KMm0ybzFWY1JPaGhWeVJza29iLVNOUDd5WGJrbGlUOWJTSHl5YzFvbzFXcTZKYnNZd2hwdVI5aS1YX1cwYkc5M0hyYS10c2pvYmZPYjFBeW5sRXotRGpqZXl1eEt1UGVtLXVvRVlTWkZfbXRsd1JxbVNFSkFwWmlxQms5VHFTZW04LVBCZWxRR000MVhBOWtFeHc3cm41anROODZEdTdUX3JvRnRTWGxpakFQUm44ZTI4XzcyNEwyTWtrN3FPREpLMkg4Mzdvc3J5bjNXRWE5MW80OTJuTS1BcGNTZ0pfUUEzbURqUTJtaHZNVElPakh5TFRCZlBjaW4tby1UQzRhc28wdmpJUEhLZ3pUeE5oWnpYNHMySjFSRF9ldW91cHhfNXhocDdCTDZSTWt4eWVMd0o3Y2VwZFhDVmNmdzdzRDEwQnlyVGVtSnVoT2oxaWhrc1lVUmdEZFI4M3pweFl1Sk11a0ZqbjlxbEQ2a3c5YndNWnRpU2h4QjFZUHNuV1daV3U0TXFsVTg3SldZQzlEMzFUdXhiNFltYndsd1RsQTV6dFBTS3diTk1fYUI4aXZVUUhUazBPdFFwcndXMTlCdU9FbjFtWnpBYnJ0WkUyZ3NFQ2w3TTREWjZWR29nMGtza3gwSUlDVks3WkxEQmZRYXhIWmxFOFk2SGFCS0JrekhKSHE3MUNfcnMwcEo0UWZRV1NiNGdkRFpIeVpWY3JaNktPbEZsQTBma25LdEN4YnpjM3U2TUM5enFXa1ZYWWZZeWVvM1JSNUg3UVJZaUJqM1R6SjJVMVF4U1VqQjZyU19XeW9vWlhnNHNyeG5QRWdKak01TTdfMC1yY3NWVlVVdVNzT2RXMXFybjRlSy1Kd3Q0elkwUHhLYU5wZzRkMTFLUURIVXJkRjdPbnd4UmJ0NktLSFlGYW03UGh0ZVozV0dGbnBIbktzdHJYOVk2bEREYjBTLW5KQ3o4ODF5cUhUSmZ5YkhfRWFxS3R0ZU5ub3dDc190Nkt4NTVBS3o4c2VaU1psOXJnb0k1V0FrVkR5YmlfSlFFdTJnZnp0YzN0M1hCMnlTVDg4bl9BcDJNbU80X0V4QXBoVEpfNzdrYmJvWkl1Yll2ejA2Sjh5ZjR5Mk1yXzgySlFLVVBQYWhuNEozejR3eS16d2EtaDFLRkkyZThQTDZzODF3YmZ1QndrNlBHNFItZWg4UVhybEJrSXVqMkJ4eGU4VUZ3VUZONW9kbzY4VC1SWTF0bVdPRlZndnpDUkJKc1Zjb3htLU1CTGZsdW5XbTBVdDRvd0F1MlRKQ3lUaTRpWDhIM3E0X1lQTy1zMXBiQnRRaU0wQU01azVFNkdoZlc3MS1lQjJ2cHMtMjRORzE5R2gzTEhvTzNlelJtWmhwX3k3QXYxV0I5OURrbmJ6NXZ6dGxwcW92Y2hNNWRDOFNQalFkMDBDRW5NRmtwaVQ3SDZZTmFKVG5BcnVoanhTU2RKLXUxSmdGSE1ObzJpNEtfR0xxY1BlSGlIaTlPZDM5S2NGdVNQeHAxOV9wc0Z5bHRzWVp5cXhoNldJSG55bkRvdEpiOHd4dFU0bk1FMWFvazFZNk9yc1FUeGFtNnBFQnludFljbzFoLUlhanZHSGliWkV2UGdLNjgyc2RoZ295RjJ5OG1na2JTNWxHVDd6U2tYWm0yeUZwOGk0X0tVUnlYWUtqUndFZWdKTmktQ0gxWWs3ZHgwbExOaElOVzJEWkdyN3RFd1dOd2tFMzFHdWwtaXZWZzdGMTNMN2xXNW9OWTk1WXFXQlh0RzBsRHVoUlduSHg5dTNWV0twSDFmT0xDcnVIS1VXdzM3MmhtX21KS3U5UW1tQjNrWDF3SURXSkQ0SnFfeWlaekMxWEdIOEFzRmJfOFhtTGo3YW1aUmRwRFRRSmV3WlE2NXFJem44VEx0ekFhTUktUUlQZXJDSEZmeDFYWW81ZUpWdHc4MWphVHFRQWJCLVZ5X3ZXMG4zNXhUVklEOGdJUlpYakhRVEg3YTgtaDY3ZVFPdUNtS00yR2NZQjlFSmNRLVRPdUd5ck5Cd0lBckNxSGxDSzF3SjlPZjFYMjQ2cjY3dnd6MkJCQUdRWWp5dF9yZ09PcFFadGthV0pMd25ncXEwRE1pYWt5cE5LSlVJbEViX3ZkUGp6SFFKMV9IVzlMSFB2UWVHUmVJRTY2YzEyWlBBTm5tcndDaXR4M3hzcWNJZVd2d0Vya0ZzcWMteUlZbFd0V1Y4ejVmdklMY2JvSWRxVTJ4c3RqR0lvZDhudEp3RVRMeDJJQTZ6TUZHZ2E1UDZkcVhiMm85TUtxT3U3Z3UxYzBUaGtjVzB1QUFSb1F5ZzhDcnMzX0VfcC1YRXpCZGVWNzBIWUhXNk5CaV91OUVfLWVKVm13Vl9RcmJxanM4bEJxeEhsR1ZyUHVIbjd0ZU1ncXk5cjY4b0c4RVZRRFZUV0tXYWZ1U3Q1bHJpWXlTMlk5QnFqbXduUlBFR3lqTzJtLXVNRTRHQU84d0s2eFZVeWF1emlRQ0FyLnN4blQ5QmJTbklGT0RKQ1Y4WGR3RXc" + }, + "api-version": "7.1" + }, + "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.1/examples/RestoreKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/RestoreKey-example.json new file mode 100644 index 000000000000..b1caca2ca419 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/RestoreKey-example.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "parameters": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLllNSVBfTXJRcTQ2X2ZwRExfSDNSSkpzSUotM05oeUJkMXlrOWJCS05JOGdnTjMxYWg2cWVoY1BISExnSnJ4OGprQkxMWFBxcDVmMXpsaWxfclVrLUtrT3J5YzhaSTljc3NNNV9TeTN4cEk0Wnk2V0ljNWNqUFd1R0NDbUJwQXlydEdPVnpoalF4bzNyVFcxRFNxZ1pVdnI4VEpseTJQS3J2aUlfUmduRWQ2LVJWS3V1Vk40ZWZWYUs5WFZUbW4xdmZ5Z3pwVHJfVFdDOVBGbXpoT0p6Z1U5OF85X25WcldWSE5TMXVMWEpYbldoQU9mUll0VlJORVFJRU5lTGMtZzNjTXJLOTFzNk5XeE5xZkZfR0w2UHg2cVhHMldXQ09nMzU3ZkJnT1ZTdERLaVZINk4xTWVkUTVwaWFkeHhUVDZMSFpva0I0eDFKbEFJZkxfYlU2OVBWdy5GOVFiM3RWbE1LcHJDS0stWUVpODJ3LlQwTVFpYXV3MGw5TWJfRFdEY1hvbzFqTjZJWXU1OVk3U0VMMm1ndFUweDNYTDl5VHNqZUY0Y2I0NExBaF9vUDdnbUgzbjdKLVZEX3hKN2hXY01XNnlTNDlFX005aXlndDlTQ2w5ZjRTdWtpM0NZdkwwUUVSVFlLSW1qMi1BRkRMWkl3Tm1HYmE4RzhheFBxR2NOS3NSZ0daZ1lUVG9pWUxxQnJ5cmJ2TEp1ZENxZ2plUWRpNU1tdHlQRnBhZ0hwSHZLa3VjRkdwLVhtSjFLYk8yQTJRT1dRVFFaOUNlcmVCcXJDbjI0SXdhUXJVQzRyTkQydzBVQTFUY3dFZXVWQkdFTGRKWm9zWHM2Q0dEZmpaSHFjdnB6NzRKd3g1T0VpcV9EUHM5VEtya01ob3djRXBsWjhaSk1jTlFSZnU5Sjg5ZDdZWGdHZEI1aWtKenA1WlY4OXcxMmIwekNITllKamdkZEhTNjJmalZlYUUxT09QXzd5Zlg1dEpiNmQ1QVhpZ3ItSkozbGI3Y2JhOXE2NHBsYmlhck1LemFiNUhtMkxNRnVLQnI1TmFrbzVQMDBoUUJnR2M2aXBJSzhNT2NLc2RhQjJGcjUwX1ViNnJEUzA4NnUzNy1DSHRGRnF5LTFBaGlDaXhRakNNTF9rWGtJMHZEYmJqRi1feGtNZGFCVi1BdTc5TzZ6V2pzRGVlV0t0VXZWUW5CMGM0Qnk3SVdDTGVWdzIyaTA5WWk3MnpCcWZPRjRyTmd4VTNrSjdfLTVib1dteVlXNndNOGVzTjR4R1kzUGhVNHlLRV91RGc2dk5Od3Q1c2NXWW9TMHh4NlBDb3M4S0R0Y3ItVXlwUTkydGhVX0ZYZ3E5U3RUWXEyWWdWV0dQbnM1Q0RMT0RBSi1sMTFJNklpdGxQN0hoeUxvMzlqNzdpV2ZUS0RnTDVrcDdEOUUzX3FkUFprdGpWUER1M1pRY1Q3MzlOMnp6XzFrWHJEb20tNlBQcXdWUzZtUXpBVW1xaXhTaXZjcWJxalpJRnRPbGxLRkE2cWVyaDJlU0FZelRNU0N1d0p4REJSQjUtbjBNUWxJSGpDMTdkTFpoVnFEMVNiNlBycV95OXN2Mml2V3E5TGE5R2ZHbEhBNlZZM1QzUWRTQ3VrWVJqWFhxLUItTm5WZGhGTVZhbFZ2b3NySmZuSEZhWGZMaTBnczVVOUt1NHlqRDdRb1cxeVIxSVk5T3JaNHFSUXdrcG5tOU8ycnJIMXBtX1hTekxRVDRrWmNLYnVneHNvWXRsRE9TaW9iS0RYdTFNdENxdkRudnh6OEZ3MUdwTXJCdUxrVlFEVmVlUDJqNFp3TGxPbkxUTmk4YlNjTm1fN3ZUc1RQbTRJRDltanBXSThCYXA4M1RLaTNkelAxazFpM0dncnIxSEpVQU96Q0NjUTRnaWxES1o4UkVsUWUyMUJBcUo3eUVublZsdWN5RzZBV2E3dmlZWXV4eEJIa0RsN1hHZHZYMGpJMjZyd2NTX0ZIMnlOaWFmZDN3SkkxMzQyWEF2VDdDUWVoOGRaZWRKU3FYUUdqQjVCSGF5Vl9vZnplVXBfOEhqRkRoS1VkcmNJNGkwa0ZwcEhkUFhNQXUxMjh3RHUyTG5VenlNNEpad1NJdW1fbmpiUTNJU1R5bUVMTngzd3QyV1NFT2Q3QUt5S3lCNEJzU3NkUE1HZXdLSTFnc2otSENFb05Cd3hQQkF2VnFDSUkzbGY5NG0tRU04LVh6TnRCVXFpT3Y5ZERCa2d2ekptSTlrMk9fVmpjbUZrbkdKb2kxVnpZcGlRVTRYbElaempDd3NDRHFrYWh1YmNxWFdyMDhVdFBtV0hGRXk0Q0tvclZMN1VIaVhsVnJPR1VHdFN2dWN3S2RjS1RPeldsUngtRGNGMExDek1kR1p3Y2czZWk1bWl0bFliRjJVbGJOMmJaU0NQWDljOWxFU2RBUUhxUEVsNXJhVDY3aDlWeGxPc3doYW54SkZvNGVuRENaYWZObURGRzJMYTY5RXFCVjZLTHowXzR1S1pDNW14YXZEazZXS3lmb0ROeXFzdVZMdG83WXNqUk4xNTJYMDVYSEhuRVN6NG5lM2MwandXYXo2MFpJR0Q1TUhNUUhQeTdPNFdnYWthVnNKZU9mYUNza3diYjQ5cV9tQnNYME5mWlBjcWFiRFhoWjdCWUxROVhFUkdibndkM0pEQmgtX1RUN2s2WERpY0tUblZQdWVGN3dzVl80aE9HUkpkVEk2UFRmV2o1dWY4dTdxRU9BdUt5NmV1Vk1LeTk3TVdLT1Q4LVpRbDBoSWowcmJWR1pILVI0cnFIMXZfVmdRUGRpLXFXb3FXcWt5MGFaSzNDTkEzUXhXZnRMR3AwcUVXcHU2T1EtQ2hONy12eE4wdFVlZGREWlF5V1d0d3g2VFcxS2hDQldaR2pabTlBQzY4YlUyQnVOTUU1NW9VV0dsbmNOOUVuRnpnTm1RTVR1SzV2VGd3WkJITWpmUXpsSUdfeWZ3QXVtSHljSzVPT092eDk1SGM3d0RBRDJXMVdSb2h5MDV5TFJkbEJ2XzREUXJyTWthZEVwZjB1dHZod1V3ZXZSNU1jVkV5Yk93VUw2Z2Y5a3JDNEw0YlR1bUJRbG9Ccng1aDNuTHhZdzkwcmlqbG5LajVZYkthZWpyTXdiSW15Ri1xVk5NbWpTd2I1MlN0SjB3T0czeE9HZkJRRHhQWHJtSXhoMERSOEdzSzBkeS0xSElJZWo1LW9STWRfSjlhVkt6MFk0d3g2VjIzaC1qUDNxMjRKYmF3dndsQTZyVjVpVUZkaDZKUXJpTU5DLV9hRF91X181VTd0OENIN1pWQ3VQM25JaTV4N2dtcWFsSzNlZ0htM3BkYl9sb3dYRTRaRUJETHZ0a2lobC13LVBGc3VZb1VKSUZWcUZ2VnM1RW5TU01XMFBJWE9TZlZNWW1KWmVrYmlHX1FqeGtCMjNCaHpZclNqQ3oxcW5TTXg5a3ZicDlRaDFuZFJYSkpJUFUyamVIdUxCNE9nVzNoenluQ2FxQXZQRXVHMlhuS3B4WGZ4QUtOeldpTElOLTBsUTRfUXQ0dHctZmphWVJVVjVLVWpyYlZnazI1MDZIUG1ZVEdWUVdRX203Z1NBU1BaajZEYklua3U3SzhFWnI2b3d1SDI1M1hxazlrSWwyTE1CcHZqT2tOTWFRTXhLcjItMllkUEV5LS1mTUFQTHBfVU15MnhqbEtMS2s3blhJdV9IMXZSbmdfVlVyVkhuZUdqRmFuODdRRU9SU1Y3clRBcHJPMmZUMmpfOWhoNkptdFlrUXFnRzg2WXlKa3NValdzM3hwZGk2TlBGRUxqQWd5T0ZDLTRrTWdLbGdJM2lUSElCV1Ezamp0U2UwR2N0MUs3QnBCSlJySUFGLTFVQjZKVDZjSjI4Z01zd0k5OGt1ZDVob1hZbVQ1bEEtWmFELUk4ZE0wcUZ0SEg4a1lXX256em85bTY5LWlZZlZfd3N5Mm1CdnVlb05RZGRRS0JrbWlVTW54VjkwdEF5RWc4WXJaWUwxck9jWHFjb2VJNl84UmV0bXZZeFZNMWJwdXFfajlmTXYtelRBOUpDZXlKMXFBTjVWQWFpY0lnZzFKWElDTEI5amVTT09zUXcxYXZxdk03TjFBcndDcjZvTUhycTVaQ0VLODV5VmI1RzhjY3Rld29pSFlzdVlPT0hnSDNMbmNoV3pmSjNNaUVjTTZfVjdSZHZCUWQwM2tQekdFVjh1STJ1aDl0bUxrNkY3VUt6WU02RXhJNW1LUEM5LVFOMk14ZTB6NDZrZTJteEdHR3cteXFMNjFHR0FpS0FjcENsSzVHeHlRbVBuREo4RHFKTk9WWDNoX283YTExVW8zMmtkdEcyaHVYcERVc2F5NkU4VGJ5R1dFZ3dmWDdaVnZrN1VNM2VqdDNqWXBxYmRZSlBNTUJCMGdNOU9mSVFjS0lUcm9IMHJEbFE2Wmt4UGM0ZHBlQ21NMzg3NXBXTlFrZzFKSnVRZzN4cE9WZ0VGallabEVENTBFaVZKNzg3cUM1YUdtakxRWl9yLVA3X2hJN09lcExWZ1BHSEFTUkxsd0dOLUZwTDc4UW9VempfWHUwNlBkNkF1VExtYmpoVmlERC11ZG5xdTVVR3dKNGxZamJqSkNBN3VQT2VfdWpzUWhZd1VHQV9YQnlsbkVySWxMN09YSE9UeGFEbEpHSDQtNHdNcm9hbmhPWTVoZ2NWZHZVQlpVZ1JEVWg0MGwzejhGVWJhUmxpaEUxeXQwdU5vR3F3TWRyWnZoTkl3YVFjUFlQeVV3UTdBdWh1dl9qSXRVcWlGQm9ncnlSb3Njd3oycXR0am12OEFRWUh5QWx5OXVqdmJ1cnk1TGNJaF9FUWZUekJuSnlfcDVZdzBDWG5CSzg3ZkVIOHJhWkh4V0VUcHFseHlmWWRWZjlQakRYTGJMYWJWQ2J6TXNSMnNYZkFvNm00VmhnaEYtQ0dOV3lta25EMDBUbWU0TGE0Vy1BLU9lR2o3Mi1uOFZjNmI5Zzc4d25tYkF0dGRyUThQWVdLUXZjdXlEbHZ5RUdHSF81VW10bFN5ajJKbHRLZXN3N1dzai1hazhDWDFidGRzU2xoQldjYUJ0dGozUmp3bEN4aEQyTXlWdHR6dDIwN3JPQjdxdEFJeVg1enJZMUxaSHB3RW1NeDhkWnM3NDdlY2ZhZVM0ZFFCWmN6U3lCNFZFWVRRWGdIeWdFX3EtYndfZXhqNWs5c0RHeHNTRnF5elFCVm9VOUtlbmFtZTRESnNMWFdaaW51UEhZUVNtWDJUZFBabXNkSHhCa3BBcHJiLUg0SGdFSnBPYWxCa0d3aFhza0hwYjZUTkhQeHktb09tLWhBaXptTVZPZzlnTDJOSHpSdUFtb0kzVTRFd2FfR0Vub3d0ZUFRU0xlY016WjZxZ3l1ZGswcG51UnlONlAxbTNCU1ExODRXUzNqeDFDNDYwTEFKM2FySS00QWV1aW5fMFZYM3FHdmEzNDR2ZXQ4N0RSN0liTUUzS01rWWtUdXotaHpqbnhHVVQ1cXZhWnYwNzdQVHExbTVDUVBUZGVlNlNnMzRmLXlseGg3MGoxSS1OWnZ3aFAyTFZ2OTJkdVZ4SlJSN3hzbEp6UzU3NXE3aWZ1UEcwUnp0NE55M1lESno0TWVDTk5wWklwTUJKeGR2bkc3azhsbXlvQlVRYmR6OHhCdW5YT3FsRDFHU205M05LYy13bzdxZnpJanYwWjF6WVpwLW5LN0o2NEUtSnp4MkQxZ2xJRG5vZGw5R215UzlwbzMzOUlZYU9QZlJnSTNad1FTVkdwcEJQN0dNRUdsRkVxbG83bTUtNFNZWEc2SmRYYU5yM2lRVmdoUEtkQWVpLWJDTEFQbGJGSkNFQVU1NXJfSEVmS2xUNS0zNlN5ZHRlcWFTZEdvMVhGRXpadWFILV96OEJsd1hXME4wdFJpdHo3SXh1OU5BTkM4R3V0Z2t2WHVFUl9Obnc1VUlsYXJlcE02VERfWl9lOHJGRDdoYXhWMVd0b1pkOUJTd05iUm1JeXU2Y2ZaelgyeFNPVlJVSndWSEctWTNaRGRpcWtzb19XR0J2TFJKQlRWT3NvZVZucWUxWktqb0NRSzFEYUZPb3B4UDdTTWhwOVlpY29XRk9VUU5ONS1EQjMtNjhDbURzdjE1LXMzRFRxUUM1OHhpd2JZLTRuWWt0eVNRV2F5elRvYlZOWG1idmI5SzktdWowYVRWRkx6SDFHMFl2TG1oU1NTd2tfM08tY3RSUExFblhQU1FWNkdVT2p5d0xIT1hTRDZfY1lTN1JrVXR4Mmc4bV8xbmhJUW0wOFd1aTVNSkdQR0JEb0RmN0szd3oyMnRnUVFXTDEwY2J0SlVvQkYyNjJVaUg3TE5pMjJWQ2tsMElYMVVRNy13cEkwcDhkV1NvV282U25PYTdkUTVpQkliZjlQX3JRd1dhYVl1NV9aQlpwQ000VXFWY2dhR1NZVnNxRHpXRVY4LXRjazBYOE51STJyZ3JSOTRDSnhjSms5MWwtb3owbldhTUFocHJubjJfd3hSWEdOYXkzNmJqU3EzWXhNMXN0dDFNN1JjenU3UTJQei1mZGpHWUFOSHZxQUtYUTZpbUphQXNwbE50Skh1SUp1andyTlRQd0ZzNGE5bDRkWHdNMDRRSWZoYzR5em1icDlYRjdVWVU0MjNXTWhRU2RMNUpaTld5QXVxOEFuRzdtd2dTUDNUMjROVGh1U0Z6Zjd1Tk5ySmdfUFk5VUNWcmlPS3FEN1lVS0FSZ1FFQ0EtTmthbG5YU0V1VEN2azJpZkVYOEh6cTJJbDV3TEZyOVFKVjBmT19EUkNyUzVzRHVaVmJ3RDI0Y2VqT3libWd1VWFuTDhiMklqS3h6TFVPT2tlMkVPNVRRTXRQUWZjeTYydkV5c2NwQzJFYXd6YUN2V3ViMVNXS2RZVnUtcVBzdFV4eWlPUHNpcFR3V1kzTXVNRkpwclNscWFVUDFJa3N6M0Q0VGpqSElzb0c2TUFsbFRZcUItSWpuSEhmYzI2blM3cmExeVVjbHRIRWtEd3Q4R1I2bmctNk9XNWJtT0J2VFFDamRUUDhSbXZ3b2tIRXZGQTlXbGs2OVZIVFpFSlNaNGdRZXFzcW83SEJJQ0h3dlViOW16YkhnaU50bGQ1WUFHT3V1U3BOTE1UcTM5LTMzVVZoTjBLa0hLUXZCenI1OXFmaFBIU3lVRnVMZzI4b2pYMGRvb3gySlFEZ1BobHZVYkR3cGluREJqVHBiMDdsY09EYVI3ZWN2M0tDOUhJQVdreDlhV0lza21Yb0FWYVNWTDBsZ05NQzNHVkxSMURfcGVoQTZySWs2Rl9qbDY0N0w4SERqRFJEbjZRRnRIa21BYW10TU9WSzdPMS1UXy1UTldwaDZ3YVFOdTBrV1ktZXAyRERndDk2enRYUkZTVWdNOXJMMnk3OENOMkVFWW1mQUktM1VjamdUblUxRnJXaEZ3dC1JNlVmNFZwNlY4XzZxTjJzVDJyeWFLWHo0Y0JJY0NoNm8tS0RpOW95SDV3MFF5eDhWb0xTNlN0YVEyYU5FejlKamctZ0N4aVp0Q1JYeWlnaWx3NTQ5VWFWMldreHR2bDZkeWRmZmFTM2ptYUxqaDRmOXhHa1JQRUdqZmZvMVY0dUN5QkI5QkNoaVVCZG1qVGxlVlJROG5Ccm5WQW5qYXVIYTRsV3VkNkhjSzU5VjJNTlpNTVdtS0tvb0E4cWtuMzVUY25EdXluSjJITUNnZElCSnVQVU9TeTI1QnhuZnA4RU5NSlZrV19UeU9uTXk5b3JtNTVobHhmSjRENThad2FRREs0QWlFZk1IVHdJc09uZ2pnU0o0S1JDdjFRa1NVeDdYRVhNU0lNUWtUYTBqS19aNS1PQ1ZNc3NBbzEzVzg1VlFKbVpDQ0tZRzZWbS1ybnVYSUdZZlZWLTg1OG93OEJZUGhDYVRhVzRkVnBLWERDRDVfc1FsamdJSnd0Vmc0T0RKY1dxelJpWWpUaXMyVzVjdlBvT1haNUIyZnFaVTlCWGVPQWM4S3Y2a2ZDVWp0OFV5UDFTaGswN2xtZ1A5b25PMWJ0eVc5VnhQSE5uUHcxNjZDeXJmVVcxaEFHQjB1YTFNYmtEVTdfdk40SlowY3VWNV9iLW9sUm80eV9yeGQ3UGRWREJsZHBWTUxsV3haLVhiV1VqdFpTVndaT01rOEtvV2F0bld6NVI0S1ZLNkFnbWJFTHhpa1MxSjYxZ1lJNlhTcm8wRnF1N0dNM2JXdlZQYm1xR3Q4SV9UcjNHamlKeDZ3OUhvZGlLbEZQc2JMakE3OWJuSG5DcHdwSEZBWGI5d3E3dmMtSF8wTU1WVGw3eE56bzhIZ1FfR2tPWEl1OV9uMVJiZS1SRDRXUmlId1RuYm5ZbXpHNjN4b3dHTlBJN2c4R203ZkxfTnpDWGhveDdUSUhXMjh0WFFCeVk4ZmR3X3YtMUtvU2lhSjNwNHBJUnlRQm1rQnpmOTlGRlpPS2g1bUxLMnBrSE9INWFlblFFNng2cHFDakNkcW53Uzk3eGJ0Skp1TkF4M1V6UDdHM2l5WlN5ZWw4SEd0YU1UZVdITzFuaE9lZFNlcTVhaGk4dEFFeVp2MFFScUxsQTRaQUxrVGh5ZUNZckpBd1cyaUJaOW5DRUVnemxqT01wdTJndHpDRnk5WktZWUloaWZKdVQ3dlBHdVhGTUtLVlg0WFU5ZmVoOFhIMUVWbnZ4cENuRjl5eEZneThuVW5CdUdsRkVWOFVCVU5oOE5BcElZY3BlTDd5Q1F5bDZQN3Fock43SEhINEloNmhLS2lVaUItWjRNMHJUSk9mZkd6MFhGWmlaSDdYT21KazBNc3pCbEVhaEFFbjJTU1JaaVFXTThsRFRRcEdrX0p3QkpRX1FVTmtMZnhCcHpsSzBUMGFxS1d3M2doWFktT3FqelM4cTFXOHVBYzNabFRUMFZHRWdWdU8yNl9vRXpXTnZYYnpKMUVfVEFxUkVWS0xfOWFlem1zM3JqYy1GdldSR2pMV09OTXhUdGw5ZzE5RFdhbFA2alJlUlJFeEg3djBLTEdvSHV1RW5IVHNQX2hsMnZuM05WWWl3dFFualFCOXpiMjZKRmxwZzZFaEF1STN4bFZMM3hwRE9qZUlPNXM3MllKY1MzcjAzYkIzbTVHMUljRVU4SkR2WTF5MjJQaG5iOGVmNno1cmk4RDY5clVLWThFOXFraExXYVhOMjRTLTZBYjNRZUtKcmxIR09yaEc2ZkpCdElqTF93Rk9kWjJqOFo0bVBZdmJaNUNEUTdnM01yYVh1aVJ6cWdvdXk3TkliempzOEZETkQ4ZHNMR1Z0OUNLanRVMnR5a0JrSUpQZlhrZ3U0LUpSVFRETjNINGdwek9md1B5V18xOXRMdlBKNEpRbHlzbnhKaEptSW5TUEtUUTljclJHVFFlS0F3THZZemdCMG5QWkIxd2dQVWJHaXRsaHlTV1pqbWplVU5oSnNnb0Z3ZHRFdTloTjRDejROWUVLZ1ozWnBKTC1sZmVJbmp0VEIwN1A4dWtpV3FHeGNBaVI5TDRPdl94VmxNYm9hblduNENNLThVSnZjRGhVRGtpTGt0eHRJOE03Zk01bngtMkFSX3MwcnlDV0F1YmVmQUxRdHVEUnQ1MVZrZnlJZkJ2UWFyb3dINnpIX1ZfZ1lJWFdOdDlvTElMT3FrNHlqcmR5Z0ZXWTl2QXZQN1Y4Q1lraUZuSVVrWGNaeUNsT2dmcTM5bXRKeHBMM2Nzb3VaWFRIcDExZ0xibWRUNUVTbjIwRThiblpEcTVvSEVEWGxPbGZHSE9ldmx6RnRCX1V4R1h0S1lYOUoxQWlLekJyZGI3QmJvemRFcDAteHVpeTZYRFp1Yjc5LW1LcnVQTDJaWWIxaTVoVmpRQUN2RnAyUHBaT2k3eFVmSlJoT0Z3Zi00OUphVE9XTjMtYVhVb0N1a0NpMWdqODhkQ29QWWNVdWs5WmxNelpkV1hJcDlnQ1gyN196U0U1WURCYWlWQ1dPc3c0Q0pGYmMta1FUOUNaMzRkU1hiczZ4S1N0OS1haHI5b3NpY2JHY2laMUlDV182WWRLM0l6ckh1UUV6TnNDQ0tEdW9iVVFRZFpBUlFMeWFlR2w0NWczN21Gb0tQN2J4b01aY1AzRjB3MzdBR0xMVzFjVi02dU5uaWhZQ1p0dThZckZQdWF4aF9VVUxPTk1SZXN5TFVsRHVydmxuQVV5ajFVMU1TbEMxTGtPbV9VV29NdVBzX1VqU2M3SDc3RTgwcmd2QmZCQTdaMkRQMmpWOFFRUmI2Q1RieEtpRkk5TFhmRlI3MjlFcURZVXVRRUk1ZDN0Y3liN3U4TzJlQnZfVGo5TzRPREx5Wjk3Z3BMdVZ3dUpVb3FqQVJnRU91U2lHdWwxaFJxYTl5NlZ0ZmpMNE5qajJJYjFsY2JyQS5OcXpkcGU4Yjdxc2MzQmpYRlhaWVpR" + }, + "api-version": "7.1" + }, + "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.1/examples/RestoreSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/RestoreSecret-example.json new file mode 100644 index 000000000000..1aa3152c46cd --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/RestoreSecret-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1", + "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.1/examples/SetCertificateContacts-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/SetCertificateContacts-example.json new file mode 100644 index 000000000000..4260798ad794 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/SetCertificateContacts-example.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1", + "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.1/examples/SetCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/SetCertificateIssuer-example.json new file mode 100644 index 000000000000..cf3852939482 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/SetCertificateIssuer-example.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.1", + "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.1/examples/SetSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/SetSecret-example.json new file mode 100644 index 000000000000..6835efccc6b8 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/SetSecret-example.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "crpsecret", + "api-version": "7.1", + "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.1/examples/UpdateCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/UpdateCertificate-example.json new file mode 100644 index 000000000000..861f503c8e91 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/UpdateCertificate-example.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "updateCert01", + "certificate-version": "c3d31d7b36c942ad83ef36fc0785a4fc", + "api-version": "7.1", + "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.1/examples/UpdateCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/UpdateCertificateIssuer-example.json new file mode 100644 index 000000000000..85e29bf4d33e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/UpdateCertificateIssuer-example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.1", + "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.1/examples/UpdateCertificateOperation-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/UpdateCertificateOperation-example.json new file mode 100644 index 000000000000..9530d9942baf --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/UpdateCertificateOperation-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "cancellationRequestedCert01", + "api-version": "7.1", + "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.1/examples/UpdateCertificatePolicy-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/UpdateCertificatePolicy-example.json new file mode 100644 index 000000000000..f2367b1bc68b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/UpdateCertificatePolicy-example.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "updateCert01", + "api-version": "7.1", + "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.1/examples/UpdateKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/UpdateKey-example.json new file mode 100644 index 000000000000..bec794459892 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/UpdateKey-example.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "UpdateKeyAttributesTest", + "key-version": "3d31e6e5c4c14eaf9be8d42c00225088", + "api-version": "7.1", + "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.1/examples/UpdateSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/UpdateSecret-example.json new file mode 100644 index 000000000000..2c685f85ba9e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/UpdateSecret-example.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "crpsecret", + "secret-version": "03bcccc7c8cf4546a0e3e21e52560441", + "api-version": "7.1", + "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.1/examples/backupStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/backupStorageAccount.json new file mode 100644 index 000000000000..2775a680dd2a --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/backupStorageAccount.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "backupStrg01", + "api-version": "7.1" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLk1JeFMyLXh0eHAxekpaZ3ZrTUY3d2pGMWxiLVJyNWFrbHFMLXpBaVVOODJKZFJNUDFwak5iS0phRktIOXBRcDg4ODBKeERDSmdESUZHc19OOGlnYmdIZ0Q1c0xVMi1pRzdKM29Hc00taFRMb05oaUd6aGY1YVREakYzWjZpZVhxcFMzVFVOVUFkeFhpTkpIYk94YjBmWHNtcWFtNnA0dXJ3Yzl3Qnk1c2pwRnJheHNRM3NRcHBDLXZybXlVZExaelJIWS0xYnhwaFQxVUdiS0Zsd1dSODU5TmFSQ1BZOFhDWUVrX0hxNnc5S0lWSXRTTlRYYWYxUWFzUDJob0NHT19PMzkzVUNzWGp0NzRtOURqdi1vTHRoMUl6TU5sSWp0STg2MTRhTGs0RTFMUXd6ZUx2X2Y1cndKeXJOWkF1c3VWRlRieFp1Zzh6T3BfYTdCOGhGSEJyQS5rc3pPdTN3blllb1ZUUjRLc2dqMUxBLmYyY3huVE1BbU13Ty1RcmdHSUFYUFN2bEdZUDRYWmJvMFVFOGxtY2xZa3ZhRE5ab3E0Wm41MVNKTDNuUFZsVnBaRFlrUmlpd05BSUxvRS12QWtVbmZoLUczOWo3RHhqWm1zZW02bXBmOWxoZjBnZFFNTDdmejBqRDZ0dW1xSVFaWUhFalV3VG5xdDloeEw5N0lnUUV0WmtFV0VnUEJETnJJNFpYWXdNU2ZyR0FfdkgzYXU1MWpabDFTWjlGajJsTHpEblNqbFd0U05QSzc3X2RwbUxrTXNCSmMtamRteUpxYmVxdmdRcGFTSUNsOXpUUXFQM2RxN1VQV2c1R1ZDNmlNZjlTcnBoUVRKX1V2bnp4LWk4ZWR6ZUppd2hYNW9HQ043RDNDWjkxTzNLQkhmYklOX1VvQWlQVWxzazFveU9KOEVjMk5mbHhOaFlrNFRKUTFBN2xnbXlLRlNQeVMyaFlwUDA2VEpTb0JUenVTQk5OTVdmT0RaTDFfV3V5eThJcDktdlVHMW5JOENDQ1hIeEVVN2FVLW5nRVR5aFBfbWt3Q2FGLWx2WTNqZlV1Z29wSllLR3VscXZadk1VZHhLYU1oemR2a05ubFdGeXlJNXdiRUdZcWgzWEJ0MS11TThrOFZVTDdQallzVUt4S1dYbzBMblJPZmFTbTZpTm9ZTmFOTm5YbF9fVW9rd05fSWM0eVVYR3RuMFhUcTZ4anQwZUpEajlET3FyYmdiLTZoclltRmxLTUNqalVxSGtLU1VPaHVYSE9jOFdFa0JEM1hiR29idi03b3c0c0gyN0YxbHh2UVh0OVgtOUl1akN5dHBMYmt6YnJVdHZJT2puY19xTUNjMXFFTG1wZHJCTGFoMzVmWHZQZXotVk9zSXBNOGdsekhWUUgyWWZHU0UwaTJqVkxpVllkZlFHeDNwdTZPamdUc1hPUm5acldlbFExMVlNbUJkWlVqWFNlZkVlQkxuT1lBbUNtYWM0dHNTa2JHTXZzQm92OWNEc1NRLWlsQUhsT1Fsanp3Umt1bnIxdk1ITlFhRDJLUEE5eGxxZ2NKU3FGT3d3RzROSzBxamhyb0NoZDFxM2RHR2V3U2tTd2xZbW44ZlM0VEJ5VjFMYmtWb2NZZHpiWDhiZG54dHRhVDhKS0pUbjJETWxjVFpvR1hFbWQzN2ZZVnlaNm5uMXdxZExtVW9XLW5OQXc3T3RLV3hyMXJUNV9qOHZjRGhTWk1HdTF6aV81NDEyVTRLcG01dlQ3c3BpWXA4aDl3Rk5scmFjYnVjZGVlaS1zMWR6cDlqWGo2NjRuWWxoYzNjOHJubjJ4ZWlna09YLTNUSWxnbmdxeXpJWG5ROHU0dTc5TC1ObXk1VFNjLU4wTnJVTUxQVE51MnhsUlE4Y0VLT0h4QkJGQV80Nk1yVXlhbjUwODFMSlYtTVVyaXAycl9tS3FJRjJET2wxS2V1aGg5am9PeFVybUk0T19MYkduVjJTbUdoZEZSd3FxUS15U2pxcFE2OFBza3hlQmxTdDZnX28tLVl6Qkg3dDI4V3ZYYzdIT3paNFBwa0psTjVmWFRwOXgtOGNuTGptcG5Pc2hUZWxTUXRYaDMwcTU3LXJZbVJzc2t2cFZfaTZFX2JUMTk2VWtTOHo2WUp1QXh3LXdlZ2tPY1ZITUxkeW5vaDU2UUtuWDhMVFdHdjhqWWNQazlaSlNSbXljTExOcWNtRnpUU1JEbzBXMXBkQVJXY2tqRFM2VFZIdTlHSElsTG9oRnpONEU1T3FqdUMxRjEwSFZjUGxoNTc5UmczWk1SNWJoVjltSEZNOFhJZU9HTHAxZFkxbnNLY2dqRVVlUW5qcF9za0RzanJZMVVncXRkTTVNVWhNSHlEZlhaZ3libk1jSDVRaml0YjdWZktrQk1YcGRwU3pLQWx0WDNjelIwODRPVm5nVGtiV2JZQURDTUQ2N1dlLWM1ZDFONHI2WFdFb2RXelNyWlhyZmc0RVRNNG1UZnV3ZjB0d3NORkRJdW5BWDkwbnZJWm1Ualo2RktpTjBiRnVNWmRpR1NKNTZNUEZMcFd3N3p0dmVmN0xENmhjNHJESXBQbEkwTVlVWTJSLWZGakdaZ29JTmdKMkVuMGFFM0c1V1RySjRxcHhhdHB4MVk3ZUgzOUk3WTYzcEJFWEtkRWIwTmstM0tnM0ljbDJPSkp6SU1fM1VHSlJTTmRQWGlfV3ViNGRTMDV4eURzZTR0d1FXdm9rb1QybHlZNGphNlVOc3lvYWN1eGFsTUZvUFR5dHF4YlVTaXFIMEZab0pWcm84amZja2wyYklmSzRqRzN6TnJIOWU1c3VUVWJDV09wYjczeFNMMG9TLVQ0T1JSNnBRbTZHQk05bFJ0eUhtMHJUMy1sNXc0c2ItNnRDcTM4S3FRdURRTGVTcDI1Rk8zMU1uVE5nTFlUeEUwUEZDT3hmRG1RY3BOOFRoWHBGbzZLNHNrd0dmQkpKTU9BTWtIUWZnMUM0c0V5cS1PLS1FWFhjbVV6QjJGRnR4c1gwR3o0aGJSdTFiUlhXcWMxU0IyUk82d0JsWGdPUmJqZjJlLWJQUFFMdmtGcWR3bFpUTE1kaWVUdjQyQmd1SFd3dzI5OEVqcnNNUXg1WG9aRG11MDFRTzlZSjFmTEYtWjkwWEVOU2p5OTM0M3UyUHhrNjhheG10bnp2ZTdwd3Q3Z0ZMMUoxZlZEd3BqMUtBZDdwdGZoWG4yUzJmT1Bfc3JOM3QxNk1qX29qOUVLQm5VNC1jQ3RLWGRkZS1EWk5zQkNhSGZ1bEtHSkFHYmx1UWs2Yi1kQk5oUS05Z19kajdfcjZub2Z2aDRielEybGlQd1E3M1RTazNiQTdzd2EzclZ5ZTVDTVNlOVotNkVKV1phek1sN0w4VUJ3cFllN0J0eHhUNEVBVGo2SXBvYWhGNTgtRHpiMmRsc1c1ZDZIWmpYZUNMTGtVRmQ5Mll3eDBibFlCanc4eTVzM040OEJMME84WG51ak42c0F0eG04Sm9hWXFVUUd3LXNBS1pTZHAzNk1GNlZXYkpUcHBoZHQ2aEhWQjFoRzdpSGN1STBTRzY0WjczNXEzZ0tSYXFHdzhIUXItSWNyeks0VEQwenk5b01NMHpRLVFBSE1PdzAyX0ozU3pVQWZ1bzFWNU42ajB0VGsyeEt0TFp3cmlHOHJNRl9NWTJrN09mdkxqNFlCb3VNN2lBNVM4LnNfM0VabFhIb1lrV283ZzdpRUp1bHc" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/decrypt-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/decrypt-example.json new file mode 100644 index 000000000000..a51342ba560b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/decrypt-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "4eb68492b5f6421e835d961ad2be3155", + "api-version": "7.1", + "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.1/examples/deleteStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/deleteStorageAccount.json new file mode 100644 index 000000000000..1e557603567d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/deleteStorageAccount.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "deleteStrg01", + "api-version": "7.1" + }, + "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.1/examples/deleteStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/deleteStorageSasDefinition.json new file mode 100644 index 000000000000..116dd63fbac1 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/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.1" + }, + "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.1/examples/encrypt-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/encrypt-example.json new file mode 100644 index 000000000000..aa8747c60c0d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/encrypt-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "f6bc1f3d37c14b2bb1a2ebb4b24e9535", + "api-version": "7.1", + "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.1/examples/getDeletedStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/getDeletedStorageAccount.json new file mode 100644 index 000000000000..1e557603567d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/getDeletedStorageAccount.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "deleteStrg01", + "api-version": "7.1" + }, + "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.1/examples/getDeletedStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/getDeletedStorageSasDefinition.json new file mode 100644 index 000000000000..116dd63fbac1 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/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.1" + }, + "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.1/examples/getStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/getStorageAccount.json new file mode 100644 index 000000000000..113f3ec74efb --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/getStorageAccount.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "readStrg01", + "api-version": "7.1" + }, + "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.1/examples/getStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/getStorageSasDefinition.json new file mode 100644 index 000000000000..256d6bbed0f7 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/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.1" + }, + "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.1/examples/listDeletedStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/listDeletedStorageAccount.json new file mode 100644 index 000000000000..c9ef218cd891 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/listDeletedStorageAccount.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1" + }, + "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.1&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/listDeletedStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/listDeletedStorageSasDefinition.json new file mode 100644 index 000000000000..bdd30e6dab0d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/listDeletedStorageSasDefinition.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "listsas01", + "api-version": "7.1" + }, + "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.1&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/listStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/listStorageAccount.json new file mode 100644 index 000000000000..15dcc98e88aa --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/listStorageAccount.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1" + }, + "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.1&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/listStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/listStorageSasDefinition.json new file mode 100644 index 000000000000..d38a475b2dee --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/listStorageSasDefinition.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "listsas01", + "api-version": "7.1" + }, + "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.1&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/purgeStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/purgeStorageAccount.json new file mode 100644 index 000000000000..d0dff7f5194e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/purgeStorageAccount.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "purgeStrg01", + "api-version": "7.1" + }, + "responses": { + "204": { + "headers": {} + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/recoverStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/recoverStorageAccount.json new file mode 100644 index 000000000000..e9d8f62481cf --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/recoverStorageAccount.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "recoverStrg01", + "api-version": "7.1" + }, + "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.1/examples/recoverStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/recoverStorageSasDefinition.json new file mode 100644 index 000000000000..67c05a3d1f0f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/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.1" + }, + "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.1/examples/regenerateStorageAccountKey.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/regenerateStorageAccountKey.json new file mode 100644 index 000000000000..4ae10e56b9bc --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/regenerateStorageAccountKey.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "regenerateKey01", + "api-version": "7.1", + "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.1/examples/restoreStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/restoreStorageAccount.json new file mode 100644 index 000000000000..07b460cb9971 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/restoreStorageAccount.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "readStrg01", + "api-version": "7.1", + "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.1/examples/setStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/setStorageAccount.json new file mode 100644 index 000000000000..8add0f1d5785 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/setStorageAccount.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "setStrg01", + "api-version": "7.1", + "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.1/examples/setStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/setStorageSasDefinition.json new file mode 100644 index 000000000000..51613c803afe --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/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.1", + "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.1/examples/sign-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/sign-example.json new file mode 100644 index 000000000000..106979d81a71 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/sign-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testkey", + "key-version": "9885aa558e8d448789683188f8c194b0", + "api-version": "7.1", + "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.1/examples/unwrapKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/unwrapKey-example.json new file mode 100644 index 000000000000..19acbf2b5033 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/unwrapKey-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "0698c2156c1a4e1da5b6bab6f6422fd6", + "api-version": "7.1", + "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.1/examples/updateStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/updateStorageAccount.json new file mode 100644 index 000000000000..69f6dea87646 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/updateStorageAccount.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "patchStrg01", + "api-version": "7.1", + "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.1/examples/updateStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/updateStorageSasDefinition.json new file mode 100644 index 000000000000..be1d4ce95f1e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/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.1", + "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.1/examples/verify-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/verify-example.json new file mode 100644 index 000000000000..ce937805097a --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/verify-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testkey", + "key-version": "9885aa558e8d448789683188f8c194b0", + "api-version": "7.1", + "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.1/examples/wrapKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/wrapKey-example.json new file mode 100644 index 000000000000..7fe02213f38a --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/examples/wrapKey-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "0698c2156c1a4e1da5b6bab6f6422fd6", + "api-version": "7.1", + "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.1/index.md b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/index.md new file mode 100644 index 000000000000..1d8c9d77ab0e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/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.1/keys.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/keys.json new file mode 100644 index 000000000000..6d4a85db9488 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/keys.json @@ -0,0 +1,1734 @@ +{ + "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.1" + }, + "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" + ], + "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)" + } + ] + } + }, + "key_ops": { + "type": "array", + "items": { + "type": "string", + "description": "Supported key operations." + } + }, + "n": { + "type": "string", + "format": "base64url", + "description": "RSA modulus." + }, + "e": { + "type": "string", + "format": "base64url", + "description": "RSA public exponent." + }, + "d": { + "type": "string", + "format": "base64url", + "description": "RSA private exponent, or the D component of an EC private key." + }, + "dp": { + "x-ms-client-name": "DP", + "type": "string", + "format": "base64url", + "description": "RSA private key parameter." + }, + "dq": { + "x-ms-client-name": "DQ", + "type": "string", + "format": "base64url", + "description": "RSA private key parameter." + }, + "qi": { + "x-ms-client-name": "QI", + "type": "string", + "format": "base64url", + "description": "RSA private key parameter." + }, + "p": { + "type": "string", + "format": "base64url", + "description": "RSA secret prime." + }, + "q": { + "type": "string", + "format": "base64url", + "description": "RSA secret prime, with p < q." + }, + "k": { + "type": "string", + "format": "base64url", + "description": "Symmetric key." + }, + "key_hsm": { + "x-ms-client-name": "t", + "type": "string", + "format": "base64url", + "description": "HSM Token, used with 'Bring Your Own Key'." + }, + "crv": { + "type": "string", + "description": "Elliptic curve name. For valid values, see JsonWebKeyCurveName.", + "enum": [ + "P-256", + "P-384", + "P-521", + "P-256K" + ], + "x-ms-enum": { + "name": "JsonWebKeyCurveName", + "modelAsString": true, + "values": [ + { + "value": "P-256", + "description": "The NIST P-256 elliptic curve, AKA SECG curve SECP256R1." + }, + { + "value": "P-384", + "description": "The NIST P-384 elliptic curve, AKA SECG curve SECP384R1." + }, + { + "value": "P-521", + "description": "The NIST P-521 elliptic curve, AKA SECG curve SECP521R1." + }, + { + "value": "P-256K", + "description": "The SECG SECP256K1 elliptic curve." + } + ] + } + }, + "x": { + "type": "string", + "format": "base64url", + "description": "X component of an EC public key." + }, + "y": { + "type": "string", + "format": "base64url", + "description": "Y component of an EC public key." + } + }, + "description": "As of http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18" + }, + "KeyAttributes": { + "allOf": [ + { + "$ref": "common.json#/definitions/Attributes" + } + ], + "properties": { + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for keys in the current vault. If it contains 'Purgeable' the key can be permanently deleted by a privileged user; otherwise, only the system can purge the key, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true, + "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": "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" + ], + "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" + ], + "x-ms-enum": { + "name": "JsonWebKeyType", + "modelAsString": true + } + }, + "key_size": { + "type": "integer", + "format": "int32", + "description": "The key size in bits. For example: 2048, 3072, or 4096 for RSA." + }, + "key_ops": { + "type": "array", + "items": { + "type": "string", + "description": "JSON web key operations. For more information, see JsonWebKeyOperation.", + "enum": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey", + "import" + ], + "x-ms-enum": { + "name": "JsonWebKeyOperation", + "modelAsString": true + } + } + }, + "attributes": { + "x-ms-client-name": "keyAttributes", + "$ref": "#/definitions/KeyAttributes" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "crv": { + "x-ms-client-name": "curve", + "type": "string", + "description": "Elliptic curve name. For valid values, see JsonWebKeyCurveName.", + "enum": [ + "P-256", + "P-384", + "P-521", + "P-256K" + ], + "x-ms-enum": { + "name": "JsonWebKeyCurveName", + "modelAsString": true + } + } + }, + "description": "The key create parameters.", + "required": [ + "kty" + ] + }, + "KeyImportParameters": { + "properties": { + "Hsm": { + "type": "boolean", + "description": "Whether to import as a hardware key (HSM) or software key." + }, + "key": { + "$ref": "#/definitions/JsonWebKey", + "description": "The Json web key" + }, + "attributes": { + "x-ms-client-name": "keyAttributes", + "$ref": "#/definitions/KeyAttributes", + "description": "The key management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The key import parameters.", + "required": [ + "key" + ] + }, + "KeyOperationsParameters": { + "properties": { + "alg": { + "x-ms-client-name": "algorithm", + "type": "string", + "minLength": 1, + "description": "algorithm identifier", + "enum": [ + "RSA-OAEP", + "RSA-OAEP-256", + "RSA1_5" + ], + "x-ms-enum": { + "name": "JsonWebKeyEncryptionAlgorithm", + "modelAsString": true + } + }, + "value": { + "type": "string", + "format": "base64url" + } + }, + "description": "The key operations parameters.", + "required": [ + "alg", + "value" + ] + }, + "KeySignParameters": { + "properties": { + "alg": { + "x-ms-client-name": "algorithm", + "type": "string", + "minLength": 1, + "description": "The signing/verification algorithm identifier. For more information on possible algorithm types, see JsonWebKeySignatureAlgorithm.", + "enum": [ + "PS256", + "PS384", + "PS512", + "RS256", + "RS384", + "RS512", + "RSNULL", + "ES256", + "ES384", + "ES512", + "ES256K" + ], + "x-ms-enum": { + "name": "JsonWebKeySignatureAlgorithm", + "modelAsString": true, + "values": [ + { + "value": "PS256", + "description": "RSASSA-PSS using SHA-256 and MGF1 with SHA-256, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "PS384", + "description": "RSASSA-PSS using SHA-384 and MGF1 with SHA-384, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "PS512", + "description": "RSASSA-PSS using SHA-512 and MGF1 with SHA-512, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RS256", + "description": "RSASSA-PKCS1-v1_5 using SHA-256, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RS384", + "description": "RSASSA-PKCS1-v1_5 using SHA-384, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RS512", + "description": "RSASSA-PKCS1-v1_5 using SHA-512, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RSNULL", + "description": "Reserved" + }, + { + "value": "ES256", + "description": "ECDSA using P-256 and SHA-256, as described in https://tools.ietf.org/html/rfc7518." + }, + { + "value": "ES384", + "description": "ECDSA using P-384 and SHA-384, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "ES512", + "description": "ECDSA using P-521 and SHA-512, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "ES256K", + "description": "ECDSA using P-256K and SHA-256, as described in https://tools.ietf.org/html/rfc7518" + } + ] + } + }, + "value": { + "type": "string", + "format": "base64url" + } + }, + "description": "The key operations parameters.", + "required": [ + "alg", + "value" + ] + }, + "KeyVerifyParameters": { + "properties": { + "alg": { + "x-ms-client-name": "algorithm", + "type": "string", + "minLength": 1, + "description": "The signing/verification algorithm. For more information on possible algorithm types, see JsonWebKeySignatureAlgorithm.", + "enum": [ + "PS256", + "PS384", + "PS512", + "RS256", + "RS384", + "RS512", + "RSNULL", + "ES256", + "ES384", + "ES512", + "ES256K" + ], + "x-ms-enum": { + "name": "JsonWebKeySignatureAlgorithm", + "modelAsString": true + } + }, + "digest": { + "type": "string", + "format": "base64url", + "description": "The digest used for signing." + }, + "value": { + "x-ms-client-name": "signature", + "type": "string", + "format": "base64url", + "description": "The signature to be verified." + } + }, + "description": "The key verify parameters.", + "required": [ + "alg", + "digest", + "value" + ] + }, + "KeyUpdateParameters": { + "properties": { + "key_ops": { + "type": "array", + "items": { + "type": "string", + "description": "JSON web key operations. For more information, see JsonWebKeyOperation.", + "enum": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey", + "import" + ], + "x-ms-enum": { + "name": "JsonWebKeyOperation", + "modelAsString": true + } + }, + "description": "Json web key operations. For more information on possible key operations, see JsonWebKeyOperation." + }, + "attributes": { + "x-ms-client-name": "keyAttributes", + "$ref": "#/definitions/KeyAttributes" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The key update parameters." + }, + "KeyRestoreParameters": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "keyBundleBackup", + "format": "base64url", + "description": "The backup blob associated with a key bundle." + } + }, + "description": "The key restore parameters.", + "required": [ + "value" + ] + }, + "KeyOperationResult": { + "properties": { + "kid": { + "type": "string", + "description": "Key identifier", + "readOnly": true + }, + "value": { + "x-ms-client-name": "result", + "type": "string", + "format": "base64url", + "readOnly": true + } + }, + "description": "The key operation result." + }, + "KeyVerifyResult": { + "properties": { + "value": { + "type": "boolean", + "readOnly": true, + "description": "True if the signature is verified, otherwise false." + } + }, + "description": "The key verify result." + }, + "KeyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/KeyItem" + }, + "readOnly": true, + "description": "A response message containing a list of keys in the key vault along with a link to the next page of keys." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of keys." + } + }, + "description": "The key list result." + }, + "DeletedKeyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedKeyItem" + }, + "readOnly": true, + "description": "A response message containing a list of deleted keys in the vault along with a link to the next page of deleted keys" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted keys." + } + }, + "description": "A list of keys that have been deleted in this vault." + }, + "BackupKeyResult": { + "properties": { + "value": { + "type": "string", + "format": "base64url", + "readOnly": true, + "description": "The backup blob containing the backed up key." + } + }, + "description": "The backup key result, containing the backup blob." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/secrets.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/secrets.json new file mode 100644 index 000000000000..a6b3ce99de60 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/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.1" + }, + "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.1/storage.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/storage.json new file mode 100644 index 000000000000..7c166455b1fd --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.1/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.1" + }, + "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 cb56a1deb4dc..4da1caa5e2cb 100644 --- a/specification/keyvault/data-plane/readme.go.md +++ b/specification/keyvault/data-plane/readme.go.md @@ -14,7 +14,7 @@ go: ``` yaml $(go) && $(multiapi) batch: - tag: package-7.2-preview - - tag: package-7.1-preview + - tag: package-7.1 - tag: package-7.0 - tag: package-2016-10 - tag: package-2015-06 @@ -29,13 +29,13 @@ Please also specify `--go-sdk-folder=`. -``` yaml $(tag) == 'package-7.1-preview' && $(go) -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/v7.1-preview/$(namespace) +``` yaml $(tag) == 'package-7.1' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/v7.1/$(namespace) ``` ### Tag: package-7.0 and go diff --git a/specification/keyvault/data-plane/readme.md b/specification/keyvault/data-plane/readme.md index 601fc2219975..dba1e62004a9 100644 --- a/specification/keyvault/data-plane/readme.md +++ b/specification/keyvault/data-plane/readme.md @@ -45,6 +45,19 @@ input-file: - Microsoft.KeyVault/preview/7.2-preview/securitydomain.json ``` +### Tag: package-7.1 + +These settings apply only when `--tag=package-7.1` is specified on the command line. + +```yaml $(tag) == 'package-7.1' +input-file: +- Microsoft.KeyVault/stable/7.1/certificates.json +- Microsoft.KeyVault/stable/7.1/common.json +- Microsoft.KeyVault/stable/7.1/keys.json +- Microsoft.KeyVault/stable/7.1/secrets.json +- Microsoft.KeyVault/stable/7.1/storage.json +``` + ### Tag: package-7.1-preview These settings apply only when `--tag=package-7.1-preview` is specified on the command line. @@ -161,6 +174,12 @@ input-file: - $(this-folder)/Microsoft.KeyVault/preview/7.2-preview/secrets.json - $(this-folder)/Microsoft.KeyVault/preview/7.2-preview/storage.json - $(this-folder)/Microsoft.KeyVault/preview/7.2-preview/backuprestore.json + - $(this-folder)/Microsoft.KeyVault/preview/7.2-preview/securitydomain.json + - $(this-folder)/Microsoft.KeyVault/stable/7.1/certificates.json + - $(this-folder)/Microsoft.KeyVault/stable/7.1/common.json + - $(this-folder)/Microsoft.KeyVault/stable/7.1/keys.json + - $(this-folder)/Microsoft.KeyVault/stable/7.1/secrets.json + - $(this-folder)/Microsoft.KeyVault/stable/7.1/storage.json - $(this-folder)/Microsoft.KeyVault/preview/7.1/certificates.json - $(this-folder)/Microsoft.KeyVault/preview/7.1/common.json - $(this-folder)/Microsoft.KeyVault/preview/7.1/keys.json diff --git a/specification/keyvault/data-plane/readme.python.md b/specification/keyvault/data-plane/readme.python.md index e6c36cc73ae4..5b33ad153403 100644 --- a/specification/keyvault/data-plane/readme.python.md +++ b/specification/keyvault/data-plane/readme.python.md @@ -22,7 +22,7 @@ Generate all API versions currently shipped for this package ```yaml $(python) && $(multiapi) batch: - tag: package-7.2-preview - - tag: package-7.1-preview + - tag: package-7.1 - tag: package-7.0 - tag: package-2016-10 ``` @@ -37,11 +37,11 @@ python: output-folder: $(python-sdks-folder)/keyvault/azure-keyvault/azure/keyvault/v7_2_preview ``` -### Tag: package-7.1-preview and python +### Tag: package-7.1 and python -These settings apply only when `--tag=package-7.1-preview --python` is specified on the command line. +These settings apply only when `--tag=package-7.1 --python` is specified on the command line. -``` yaml $(tag) == 'package-7.1-preview' && $(python) +``` yaml $(tag) == 'package-7.1' && $(python) python: namespace: azure.keyvault.v7_1 output-folder: $(python-sdks-folder)/keyvault/azure-keyvault/azure/keyvault/v7_1_preview diff --git a/specification/machinelearningservices/resource-manager/readme.md b/specification/machinelearningservices/resource-manager/readme.md index 65bcfcfc1907..966eb3408a19 100644 --- a/specification/machinelearningservices/resource-manager/readme.md +++ b/specification/machinelearningservices/resource-manager/readme.md @@ -370,6 +370,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - $(this-folder)/Microsoft.MachineLearningServices/stable/2020-06-01/machineLearningServices.json + - $(this-folder)/Microsoft.MachineLearningServices/preview/2020-05-15-preview/machineLearningServices.json - $(this-folder)/Microsoft.MachineLearningServices/stable/2020-04-01/machineLearningServices.json - $(this-folder)/Microsoft.MachineLearningServices/stable/2020-03-01/machineLearningServices.json - $(this-folder)/Microsoft.MachineLearningServices/stable/2020-01-01/machineLearningServices.json diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/Maintenance.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/Maintenance.json index e1c82d3f360c..27f506189e74 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/Maintenance.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/Maintenance.json @@ -16,6 +16,96 @@ "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": "Resource Identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "PublicMaintenanceConfigurations_GetForResource": { + "$ref": "./examples/PublicMaintenanceConfigurations_GetForResource.json" + } + } + } + }, "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/{applyUpdateName}": { "get": { "tags": [ @@ -1366,11 +1456,11 @@ "type": "object", "properties": { "startDateTime": { - "description": "Effective start date of the maintenance window in YYYY-MM-DD hh:mm:ss 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.", + "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:ss 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.", + "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": { @@ -1411,7 +1501,9 @@ "InResource", "OSImage", "Extension", - "InGuestPatch" + "InGuestPatch", + "SQLDB", + "SQLManagedInstance" ], "type": "string", "x-ms-enum": { @@ -1423,6 +1515,18 @@ "$ref": "#/definitions/MaintenanceWindow", "description": "Definition of a MaintenanceWindow", "x-ms-client-flatten": true + }, + "visibility": { + "description": "Gets or sets the visibility of the configuration", + "enum": [ + "Custom", + "Public" + ], + "type": "string", + "x-ms-enum": { + "name": "Visibility", + "modelAsString": true + } } } }, @@ -1574,7 +1678,9 @@ "InResource", "OSImage", "Extension", - "InGuestPatch" + "InGuestPatch", + "SQLDB", + "SQLManagedInstance" ], "type": "string", "x-ms-enum": { diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json index e180ac355c35..ecea09029ebc 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json @@ -8,11 +8,12 @@ "location": "westus2", "properties": { "namespace": "Microsoft.Maintenance", + "visibility": "Custom", "maintenanceScope": "OSImage", "maintenanceWindow": { - "startDateTime": "2020-04-30 08:00:00", - "expirationDateTime": "9999-12-31 00:00:00", - "duration": "05:00:00", + "startDateTime": "2020-04-30 08:00", + "expirationDateTime": "9999-12-31 00:00", + "duration": "05:00", "timeZone": "Pacific Standard Time", "recurEvery": "Day" } @@ -27,11 +28,12 @@ "location": "westus2", "properties": { "namespace": "Microsoft.Maintenance", + "visibility": "Custom", "maintenanceScope": "OSImage", "maintenanceWindow": { - "startDateTime": "2020-04-30 08:00:00", - "expirationDateTime": "9999-12-31 00:00:00", - "duration": "05:00:00", + "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/preview/2020-07-01-preview/examples/MaintenanceConfigurations_GetForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/examples/MaintenanceConfigurations_GetForResource.json index c0c8d43171f6..29a0080a4455 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/examples/MaintenanceConfigurations_GetForResource.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/examples/MaintenanceConfigurations_GetForResource.json @@ -14,10 +14,11 @@ "properties": { "namespace": "Microsoft.Maintenance", "maintenanceScope": "OSImage", + "visibility": "Custom", "maintenanceWindow": { - "startDateTime": "2020-04-30 08:00:00", - "expirationDateTime": "9999-12-31 00:00:00", - "duration": "05:00:00", + "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/preview/2020-07-01-preview/examples/MaintenanceConfigurations_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/examples/MaintenanceConfigurations_List.json index c36f3befa15f..844aac01bc32 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/examples/MaintenanceConfigurations_List.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/examples/MaintenanceConfigurations_List.json @@ -14,10 +14,11 @@ "properties": { "namespace": "Microsoft.Maintenance", "maintenanceScope": "OSImage", + "visibility": "Custom", "maintenanceWindow": { - "startDateTime": "2020-04-30 08:00:00", - "expirationDateTime": "9999-12-31 00:00:00", - "duration": "05:00:00", + "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/preview/2020-07-01-preview/examples/MaintenanceConfigurations_UpdateForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/examples/MaintenanceConfigurations_UpdateForResource.json index 915e18a49440..c66571d008de 100644 --- a/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/examples/MaintenanceConfigurations_UpdateForResource.json +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/examples/MaintenanceConfigurations_UpdateForResource.json @@ -8,11 +8,12 @@ "location": "westus2", "properties": { "namespace": "Microsoft.Maintenance", + "visibility": "Custom", "maintenanceScope": "OSImage", "maintenanceWindow": { - "startDateTime": "2020-04-30 08:00:00", - "expirationDateTime": "9999-12-31 00:00:00", - "duration": "05:00:00", + "startDateTime": "2020-04-30 08:00", + "expirationDateTime": "9999-12-31 00:00", + "duration": "05:00", "timeZone": "Pacific Standard Time", "recurEvery": "Month Third Sunday" } @@ -28,10 +29,11 @@ "properties": { "namespace": "Microsoft.Maintenance", "maintenanceScope": "OSImage", + "visibility": "Custom", "maintenanceWindow": { - "startDateTime": "2020-04-30 08:00:00", - "expirationDateTime": "9999-12-31 00:00:00", - "duration": "05:00:00", + "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/preview/2020-07-01-preview/examples/PublicMaintenanceConfigurations_GetForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/examples/PublicMaintenanceConfigurations_GetForResource.json new file mode 100644 index 000000000000..477e2a295e7a --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/examples/PublicMaintenanceConfigurations_GetForResource.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceName": "configuration1", + "api-version": "2020-07-01-preview" + }, + "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/preview/2020-07-01-preview/examples/PublicMaintenanceConfigurations_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/examples/PublicMaintenanceConfigurations_List.json new file mode 100644 index 000000000000..67313ccf7166 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/preview/2020-07-01-preview/examples/PublicMaintenanceConfigurations_List.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "api-version": "2020-07-01-preview" + }, + "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/readme.md b/specification/maintenance/resource-manager/readme.md index 4580015e6406..611010338510 100644 --- a/specification/maintenance/resource-manager/readme.md +++ b/specification/maintenance/resource-manager/readme.md @@ -138,6 +138,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Maintenance/preview/2020-07-01-preview/Maintenance.json - $(this-folder)/Microsoft.Maintenance/stable/2020-04-01/Maintenance.json - $(this-folder)/Microsoft.Maintenance/preview/2018-06-01-preview/Maintenance.json diff --git a/specification/mariadb/resource-manager/readme.md b/specification/mariadb/resource-manager/readme.md index bc1c5568efd2..e6640f77af11 100644 --- a/specification/mariadb/resource-manager/readme.md +++ b/specification/mariadb/resource-manager/readme.md @@ -181,11 +181,11 @@ require: $(this-folder)/../../../profiles/readme.md input-file: - $(this-folder)/Microsoft.DBforMariaDB/preview/2018-06-01-preview/mariadb.json - $(this-folder)/Microsoft.DBforMariaDB/stable/2018-06-01/mariadb.json - - $(this-folder)/Microsoft.DBforMariaDB/stable/2018-06-01/ServerSecurityAlertPolicies.json - $(this-folder)/Microsoft.DBforMariaDB/stable/2018-06-01/QueryPerformanceInsights.json - $(this-folder)/Microsoft.DBforMariaDB/stable/2018-06-01/PerformanceRecommendations.json - $(this-folder)/Microsoft.DBforMariaDB/stable/2018-06-01/PrivateEndpointConnections.json - $(this-folder)/Microsoft.DBforMariaDB/stable/2018-06-01/PrivateLinkResources.json + - $(this-folder)/Microsoft.DBforMariaDB/stable/2018-06-01/ServerSecurityAlertPolicies.json - $(this-folder)/Microsoft.DBforMariaDB/preview/2018-06-01-privatepreview/mariadb.json - $(this-folder)/Microsoft.DBforMariaDB/preview/2018-06-01-privatepreview/PrivateEndpointConnections.json - $(this-folder)/Microsoft.DBforMariaDB/preview/2018-06-01-privatepreview/PrivateLinkResources.json diff --git a/specification/mediaservices/data-plane/readme.md b/specification/mediaservices/data-plane/readme.md index a43ff67118e7..20ae5783b3b2 100644 --- a/specification/mediaservices/data-plane/readme.md +++ b/specification/mediaservices/data-plane/readme.md @@ -70,4 +70,28 @@ csharp: use-internal-constructors: true override-client-name: LiveVideoAnalyticsEdgeClient use-datetimeoffset: true -``` \ No newline at end of file +``` +## 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)/LiveVideoAnalytics.Edge/preview/1.0/LiveVideoAnalytics.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/mediaservices/resource-manager/readme.md b/specification/mediaservices/resource-manager/readme.md index 86bd41461ddd..5d98b8ef86d9 100644 --- a/specification/mediaservices/resource-manager/readme.md +++ b/specification/mediaservices/resource-manager/readme.md @@ -338,6 +338,14 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Media/stable/2020-05-01/AccountFilters.json + - $(this-folder)/Microsoft.Media/stable/2020-05-01/Accounts.json + - $(this-folder)/Microsoft.Media/stable/2020-05-01/AssetsAndAssetFilters.json + - $(this-folder)/Microsoft.Media/stable/2020-05-01/ContentKeyPolicies.json + - $(this-folder)/Microsoft.Media/stable/2020-05-01/Encoding.json + - $(this-folder)/Microsoft.Media/stable/2020-05-01/StreamingPoliciesAndStreamingLocators.json + - $(this-folder)/Microsoft.Media/stable/2020-05-01/streamingservice.json + - $(this-folder)/Microsoft.Media/stable/2020-05-01/Common.json - $(this-folder)/Microsoft.Media/stable/2018-07-01/AccountFilters.json - $(this-folder)/Microsoft.Media/stable/2018-07-01/Accounts.json - $(this-folder)/Microsoft.Media/stable/2018-07-01/AssetsAndAssetFilters.json diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/createOrUpdateScheduledQueryRule.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/createOrUpdateScheduledQueryRule.json new file mode 100644 index 000000000000..8eacdd66cb18 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/createOrUpdateScheduledQueryRule.json @@ -0,0 +1,189 @@ +{ + "parameters": { + "subscriptionId": "dd4bfc94-a096-412b-9c43-4bd13e35afbc", + "resourceGroupName": "QueryResourceGroupName", + "ruleName": "perf", + "api-version": "2020-05-01-preview", + "parameters": { + "location": "eastus", + "properties": { + "description": "Performance rule", + "severity": 4, + "enabled": true, + "evaluationFrequency": "PT5M", + "scopes": [ + "/subscriptions/aaf177ed-1330-a9f2-80ea-fd3d7783b147/resourceGroups/scopeResourceGroup1/providers/Microsoft.Compute/virtualMachines/vm1" + ], + "windowSize": "PT10M", + "criteria": { + "allOf": [ + { + "query": "Perf | where ObjectName == \"Processor\"", + "timeAggregation": "Average", + "metricMeasureColumn": "% Processor Time", + "resourceIdColumn": "resourceId", + "dimensions": [ + { + "name": "ComputerIp", + "operator": "Exclude", + "values": [ + "192.168.1.1" + ] + }, + { + "name": "OSType", + "operator": "Include", + "values": [ + "*" + ] + } + ], + "operator": "GreaterThan", + "threshold": 70, + "failingPeriods": { + "numberOfEvaluationPeriods": 1, + "minFailingPeriodsToAlert": 1 + } + } + ] + }, + "muteActionsDuration": "PT30M", + "actions": [ + { + "actionGroupId": "/subscriptions/1cf177ed-1330-4692-80ea-fd3d7783b147/resourcegroups/sqrapi/providers/microsoft.insights/actiongroups/myactiongroup", + "webHookProperties": { + "key11": "value11", + "key12": "value12" + } + } + ] + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/dd4bfc94-a096-412b-9c43-4bd13e35afbc/resourcegroups/QueryResourceGroupName/providers/microsoft.insights/scheduledqueryrules/perf", + "name": "perf", + "type": "microsoft.insights/scheduledqueryrules", + "location": "eastus", + "tags": {}, + "properties": { + "description": "Performance rule", + "severity": 4, + "enabled": true, + "evaluationFrequency": "PT5M", + "scopes": [ + "/subscriptions/aaf177ed-1330-a9f2-80ea-fd3d7783b147/resourceGroups/scopeResourceGroup1/providers/Microsoft.Compute/virtualMachines/vm1" + ], + "windowSize": "PT10M", + "criteria": { + "allOf": [ + { + "query": "Perf | where ObjectName == \"Processor\"", + "timeAggregation": "Average", + "metricMeasureColumn": "% Processor Time", + "resourceIdColumn": "resourceId", + "dimensions": [ + { + "name": "ComputerIp", + "operator": "Exclude", + "values": [ + "192.168.1.1" + ] + }, + { + "name": "OSType", + "operator": "Include", + "values": [ + "*" + ] + } + ], + "operator": "GreaterThan", + "threshold": 70, + "failingPeriods": { + "numberOfEvaluationPeriods": 1, + "minFailingPeriodsToAlert": 1 + } + } + ] + }, + "muteActionsDuration": "PT30M", + "actions": [ + { + "actionGroupId": "/subscriptions/1cf177ed-1330-4692-80ea-fd3d7783b147/resourcegroups/sqrapi/providers/microsoft.insights/actiongroups/myactiongroup", + "webHookProperties": { + "key11": "value11", + "key12": "value12" + } + } + ] + } + } + }, + "201": { + "headers": {}, + "body": { + "id": "/subscriptions/dd4bfc94-a096-412b-9c43-4bd13e35afbc/resourcegroups/QueryResourceGroupName/providers/microsoft.insights/scheduledqueryrules/perf", + "name": "perf", + "type": "microsoft.insights/scheduledqueryrules", + "location": "eastus", + "tags": {}, + "properties": { + "description": "Performance rule", + "severity": 4, + "enabled": true, + "evaluationFrequency": "PT5M", + "scopes": [ + "/subscriptions/aaf177ed-1330-a9f2-80ea-fd3d7783b147/resourceGroups/scopeResourceGroup1/providers/Microsoft.Compute/virtualMachines/vm1" + ], + "windowSize": "PT10M", + "criteria": { + "allOf": [ + { + "query": "Perf | where ObjectName == \"Processor\"", + "timeAggregation": "Average", + "metricMeasureColumn": "% Processor Time", + "resourceIdColumn": "resourceId", + "dimensions": [ + { + "name": "ComputerIp", + "operator": "Exclude", + "values": [ + "192.168.1.1" + ] + }, + { + "name": "OSType", + "operator": "Include", + "values": [ + "*" + ] + } + ], + "operator": "GreaterThan", + "threshold": 70, + "failingPeriods": { + "numberOfEvaluationPeriods": 1, + "minFailingPeriodsToAlert": 1 + } + } + ] + }, + "muteActionsDuration": "PT30M", + "actions": [ + { + "actionGroupId": "/subscriptions/1cf177ed-1330-4692-80ea-fd3d7783b147/resourcegroups/sqrapi/providers/microsoft.insights/actiongroups/myactiongroup", + "webHookProperties": { + "key11": "value11", + "key12": "value12" + } + } + ] + } + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/createOrUpdateScheduledQueryRuleResourceGroup.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/createOrUpdateScheduledQueryRuleResourceGroup.json new file mode 100644 index 000000000000..c8480899d5b5 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/createOrUpdateScheduledQueryRuleResourceGroup.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "subscriptionId": "dd4bfc94-a096-412b-9c43-4bd13e35afbc", + "resourceGroupName": "QueryResourceGroupName", + "ruleName": "heartbeat", + "api-version": "2020-05-01-preview", + "parameters": { + "location": "eastus", + "properties": { + "description": "Health check rule", + "severity": 4, + "enabled": true, + "evaluationFrequency": "PT5M", + "scopes": [ + "/subscriptions/aaf177ed-1330-a9f2-80ea-fd3d7783b147/resourceGroups/scopeResourceGroup1" + ], + "targetResourceTypes": [ + "Microsoft.Compute/virtualMachines" + ], + "windowSize": "PT10M", + "criteria": { + "allOf": [ + { + "query": "Heartbeat", + "timeAggregation": "Count", + "dimensions": [], + "operator": "GreaterThan", + "threshold": 360, + "failingPeriods": { + "numberOfEvaluationPeriods": 1, + "minFailingPeriodsToAlert": 1 + } + } + ] + }, + "muteActionsDuration": "PT30M", + "actions": [ + { + "actionGroupId": "/subscriptions/1cf177ed-1330-4692-80ea-fd3d7783b147/resourcegroups/sqrapi/providers/microsoft.insights/actiongroups/myactiongroup", + "webHookProperties": { + "key11": "value11", + "key12": "value12" + } + } + ] + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/dd4bfc94-a096-412b-9c43-4bd13e35afbc/resourcegroups/QueryResourceGroupName/providers/microsoft.insights/scheduledqueryrules/heartbeat", + "name": "heartbeat", + "type": "microsoft.insights/scheduledqueryrules", + "location": "eastus", + "tags": {}, + "properties": { + "description": "Health check rule", + "severity": 4, + "enabled": true, + "evaluationFrequency": "PT5M", + "scopes": [ + "/subscriptions/aaf177ed-1330-a9f2-80ea-fd3d7783b147/resourceGroups/scopeResourceGroup1" + ], + "targetResourceTypes": [ + "Microsoft.Compute/virtualMachines" + ], + "windowSize": "PT10M", + "criteria": { + "allOf": [ + { + "query": "Heartbeat", + "timeAggregation": "Count", + "dimensions": [], + "operator": "GreaterThan", + "threshold": 360, + "failingPeriods": { + "numberOfEvaluationPeriods": 1, + "minFailingPeriodsToAlert": 1 + } + } + ] + }, + "muteActionsDuration": "PT30M", + "actions": [ + { + "actionGroupId": "/subscriptions/1cf177ed-1330-4692-80ea-fd3d7783b147/resourcegroups/sqrapi/providers/microsoft.insights/actiongroups/myactiongroup", + "webHookProperties": { + "key11": "value11", + "key12": "value12" + } + } + ] + } + } + }, + "201": { + "headers": {}, + "body": { + "id": "/subscriptions/dd4bfc94-a096-412b-9c43-4bd13e35afbc/resourcegroups/QueryResourceGroupName/providers/microsoft.insights/scheduledqueryrules/heartbeat", + "name": "heartbeat", + "type": "microsoft.insights/scheduledqueryrules", + "location": "eastus", + "tags": {}, + "properties": { + "description": "Health check rule", + "severity": 4, + "enabled": true, + "evaluationFrequency": "PT5M", + "scopes": [ + "/subscriptions/aaf177ed-1330-a9f2-80ea-fd3d7783b147/resourceGroups/scopeResourceGroup1" + ], + "targetResourceTypes": [ + "Microsoft.Compute/virtualMachines" + ], + "windowSize": "PT10M", + "criteria": { + "allOf": [ + { + "query": "Heartbeat", + "timeAggregation": "Count", + "dimensions": [], + "operator": "GreaterThan", + "threshold": 360, + "failingPeriods": { + "numberOfEvaluationPeriods": 1, + "minFailingPeriodsToAlert": 1 + } + } + ] + }, + "muteActionsDuration": "PT30M", + "actions": [ + { + "actionGroupId": "/subscriptions/1cf177ed-1330-4692-80ea-fd3d7783b147/resourcegroups/sqrapi/providers/microsoft.insights/actiongroups/myactiongroup", + "webHookProperties": { + "key11": "value11", + "key12": "value12" + } + } + ] + } + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/createOrUpdateScheduledQueryRuleSubscription.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/createOrUpdateScheduledQueryRuleSubscription.json new file mode 100644 index 000000000000..92fab45cdaf5 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/createOrUpdateScheduledQueryRuleSubscription.json @@ -0,0 +1,198 @@ +{ + "parameters": { + "subscriptionId": "dd4bfc94-a096-412b-9c43-4bd13e35afbc", + "resourceGroupName": "QueryResourceGroupName", + "ruleName": "perf", + "api-version": "2020-05-01-preview", + "parameters": { + "location": "eastus", + "properties": { + "description": "Performance rule", + "severity": 4, + "enabled": true, + "evaluationFrequency": "PT5M", + "scopes": [ + "/subscriptions/aaf177ed-1330-a9f2-80ea-fd3d7783b147" + ], + "targetResourceTypes": [ + "Microsoft.Compute/virtualMachines" + ], + "windowSize": "PT10M", + "criteria": { + "allOf": [ + { + "query": "Perf | where ObjectName == \"Processor\"", + "timeAggregation": "Average", + "metricMeasureColumn": "% Processor Time", + "resourceIdColumn": "resourceId", + "dimensions": [ + { + "name": "ComputerIp", + "operator": "Exclude", + "values": [ + "192.168.1.1" + ] + }, + { + "name": "OSType", + "operator": "Include", + "values": [ + "*" + ] + } + ], + "operator": "GreaterThan", + "threshold": 70, + "failingPeriods": { + "numberOfEvaluationPeriods": 1, + "minFailingPeriodsToAlert": 1 + } + } + ] + }, + "muteActionsDuration": "PT30M", + "actions": [ + { + "actionGroupId": "/subscriptions/1cf177ed-1330-4692-80ea-fd3d7783b147/resourcegroups/sqrapi/providers/microsoft.insights/actiongroups/myactiongroup", + "webHookProperties": { + "key11": "value11", + "key12": "value12" + } + } + ] + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/dd4bfc94-a096-412b-9c43-4bd13e35afbc/resourcegroups/QueryResourceGroupName/providers/microsoft.insights/scheduledqueryrules/perf", + "name": "perf", + "type": "microsoft.insights/scheduledqueryrules", + "location": "eastus", + "tags": {}, + "properties": { + "description": "Performance rule", + "severity": 4, + "enabled": true, + "evaluationFrequency": "PT5M", + "scopes": [ + "/subscriptions/aaf177ed-1330-a9f2-80ea-fd3d7783b147" + ], + "targetResourceTypes": [ + "Microsoft.Compute/virtualMachines" + ], + "windowSize": "PT10M", + "criteria": { + "allOf": [ + { + "query": "Perf | where ObjectName == \"Processor\"", + "timeAggregation": "Average", + "metricMeasureColumn": "% Processor Time", + "resourceIdColumn": "resourceId", + "dimensions": [ + { + "name": "ComputerIp", + "operator": "Exclude", + "values": [ + "192.168.1.1" + ] + }, + { + "name": "OSType", + "operator": "Include", + "values": [ + "*" + ] + } + ], + "operator": "GreaterThan", + "threshold": 70, + "failingPeriods": { + "numberOfEvaluationPeriods": 1, + "minFailingPeriodsToAlert": 1 + } + } + ] + }, + "muteActionsDuration": "PT30M", + "actions": [ + { + "actionGroupId": "/subscriptions/1cf177ed-1330-4692-80ea-fd3d7783b147/resourcegroups/sqrapi/providers/microsoft.insights/actiongroups/myactiongroup", + "webHookProperties": { + "key11": "value11", + "key12": "value12" + } + } + ] + } + } + }, + "201": { + "headers": {}, + "body": { + "id": "/subscriptions/dd4bfc94-a096-412b-9c43-4bd13e35afbc/resourcegroups/QueryResourceGroupName/providers/microsoft.insights/scheduledqueryrules/perf", + "name": "perf", + "type": "microsoft.insights/scheduledqueryrules", + "location": "eastus", + "tags": {}, + "properties": { + "description": "Performance rule", + "severity": 4, + "enabled": true, + "evaluationFrequency": "PT5M", + "scopes": [ + "/subscriptions/aaf177ed-1330-a9f2-80ea-fd3d7783b147" + ], + "targetResourceTypes": [ + "Microsoft.Compute/virtualMachines" + ], + "windowSize": "PT10M", + "criteria": { + "allOf": [ + { + "query": "Perf | where ObjectName == \"Processor\"", + "timeAggregation": "Average", + "metricMeasureColumn": "% Processor Time", + "resourceIdColumn": "resourceId", + "dimensions": [ + { + "name": "ComputerIp", + "operator": "Exclude", + "values": [ + "192.168.1.1" + ] + }, + { + "name": "OSType", + "operator": "Include", + "values": [ + "*" + ] + } + ], + "operator": "GreaterThan", + "threshold": 70, + "failingPeriods": { + "numberOfEvaluationPeriods": 1, + "minFailingPeriodsToAlert": 1 + } + } + ] + }, + "muteActionsDuration": "PT30M", + "actions": [ + { + "actionGroupId": "/subscriptions/1cf177ed-1330-4692-80ea-fd3d7783b147/resourcegroups/sqrapi/providers/microsoft.insights/actiongroups/myactiongroup", + "webHookProperties": { + "key11": "value11", + "key12": "value12" + } + } + ] + } + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/deleteScheduledQueryRule.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/deleteScheduledQueryRule.json new file mode 100644 index 000000000000..4c1aa63528cf --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/deleteScheduledQueryRule.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "dd4bfc94-a096-412b-9c43-4bd13e35afbc", + "resourceGroupName": "QueryResourceGroupName", + "ruleName": "heartbeat", + "api-version": "2020-05-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/getScheduledQueryRule.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/getScheduledQueryRule.json new file mode 100644 index 000000000000..90001a5f741b --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/getScheduledQueryRule.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "dd4bfc94-a096-412b-9c43-4bd13e35afbc", + "resourceGroupName": "QueryResourceGroupName", + "ruleName": "perf", + "api-version": "2020-05-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/dd4bfc94-a096-412b-9c43-4bd13e35afbc/resourcegroups/QueryResourceGroupName/providers/microsoft.insights/scheduledqueryrules/perf", + "name": "perf", + "type": "microsoft.insights/scheduledqueryrules", + "location": "eastus", + "tags": {}, + "properties": { + "description": "Performance rule", + "severity": 4, + "enabled": true, + "evaluationFrequency": "PT5M", + "scopes": [ + "/subscriptions/aaf177ed-1330-a9f2-80ea-fd3d7783b147/resourceGroups/scopeResourceGroup1/providers/Microsoft.Compute/virtualMachines/vm1" + ], + "windowSize": "PT10M", + "criteria": { + "allOf": [ + { + "query": "Perf | where ObjectName == \"Processor\"", + "timeAggregation": "Average", + "metricMeasureColumn": "% Processor Time", + "resourceIdColumn": "resourceId", + "dimensions": [ + { + "name": "ComputerIp", + "operator": "Exclude", + "values": [ + "192.168.1.1" + ] + }, + { + "name": "OSType", + "operator": "Include", + "values": [ + "*" + ] + } + ], + "operator": "GreaterThan", + "threshold": 70, + "failingPeriods": { + "numberOfEvaluationPeriods": 1, + "minFailingPeriodsToAlert": 1 + } + } + ] + }, + "muteActionsDuration": "PT30M", + "actions": [ + { + "actionGroupId": "/subscriptions/1cf177ed-1330-4692-80ea-fd3d7783b147/resourcegroups/sqrapi/providers/microsoft.insights/actiongroups/myactiongroup", + "webHookProperties": { + "key11": "value11", + "key12": "value12" + } + } + ] + } + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/listScheduledQueryRulesByResourceGroup.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/listScheduledQueryRulesByResourceGroup.json new file mode 100644 index 000000000000..b35e7da408d2 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/listScheduledQueryRulesByResourceGroup.json @@ -0,0 +1,123 @@ +{ + "parameters": { + "subscriptionId": "dd4bfc94-a096-412b-9c43-4bd13e35afbc", + "resourceGroupName": "QueryResourceGroupName", + "api-version": "2020-05-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/dd4bfc94-a096-412b-9c43-4bd13e35afbc/resourcegroups/QueryResourceGroupName/providers/microsoft.insights/scheduledqueryrules/perf", + "name": "perf", + "type": "microsoft.insights/scheduledqueryrules", + "location": "eastus", + "tags": {}, + "properties": { + "description": "Performance rule", + "severity": 4, + "enabled": true, + "evaluationFrequency": "PT5M", + "scopes": [ + "/subscriptions/aaf177ed-1330-a9f2-80ea-fd3d7783b147/resourceGroups/scopeResourceGroup1" + ], + "targetResourceTypes": [ + "Microsoft.Compute/virtualMachines" + ], + "windowSize": "PT10M", + "criteria": { + "allOf": [ + { + "query": "Perf | where ObjectName == \"Processor\"", + "timeAggregation": "Average", + "metricMeasureColumn": "% Processor Time", + "resourceIdColumn": "resourceId", + "dimensions": [ + { + "name": "ComputerIp", + "operator": "Exclude", + "values": [ + "192.168.1.1" + ] + }, + { + "name": "OSType", + "operator": "Include", + "values": [ + "*" + ] + } + ], + "operator": "GreaterThan", + "threshold": 70, + "failingPeriods": { + "numberOfEvaluationPeriods": 1, + "minFailingPeriodsToAlert": 1 + } + } + ] + }, + "muteActionsDuration": "PT30M", + "actions": [ + { + "actionGroupId": "/subscriptions/1cf177ed-1330-4692-80ea-fd3d7783b147/resourcegroups/sqrapi/providers/microsoft.insights/actiongroups/myactiongroup", + "webHookProperties": { + "key11": "value11", + "key12": "value12" + } + } + ] + } + }, + { + "id": "/subscriptions/dd4bfc94-a096-412b-9c43-4bd13e35afbc/resourcegroups/QueryResourceGroupName/providers/microsoft.insights/scheduledqueryrules/heartbeat", + "name": "heartbeat", + "type": "microsoft.insights/scheduledqueryrules", + "location": "eastus", + "tags": {}, + "properties": { + "description": "Health check rule", + "severity": 4, + "enabled": true, + "evaluationFrequency": "PT5M", + "scopes": [ + "/subscriptions/aaf177ed-1330-a9f2-80ea-fd3d7783b147/resourceGroups/scopeResourceGroup1" + ], + "targetResourceTypes": [ + "Microsoft.Compute/virtualMachines" + ], + "windowSize": "PT10M", + "criteria": { + "allOf": [ + { + "query": "Heartbeat", + "timeAggregation": "Count", + "dimensions": [], + "operator": "GreaterThan", + "threshold": 360, + "failingPeriods": { + "numberOfEvaluationPeriods": 1, + "minFailingPeriodsToAlert": 1 + } + } + ] + }, + "muteActionsDuration": "PT30M", + "actions": [ + { + "actionGroupId": "/subscriptions/1cf177ed-1330-4692-80ea-fd3d7783b147/resourcegroups/sqrapi/providers/microsoft.insights/actiongroups/myactiongroup", + "webHookProperties": { + "key11": "value11", + "key12": "value12" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/listScheduledQueryRulesBySubscription.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/listScheduledQueryRulesBySubscription.json new file mode 100644 index 000000000000..5df7739d68ff --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/listScheduledQueryRulesBySubscription.json @@ -0,0 +1,122 @@ +{ + "parameters": { + "subscriptionId": "dd4bfc94-a096-412b-9c43-4bd13e35afbc", + "api-version": "2020-05-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/dd4bfc94-a096-412b-9c43-4bd13e35afbc/resourcegroups/QueryResourceGroupName/providers/microsoft.insights/scheduledqueryrules/perf", + "name": "perf", + "type": "microsoft.insights/scheduledqueryrules", + "location": "eastus", + "tags": {}, + "properties": { + "description": "Performance rule", + "severity": 4, + "enabled": true, + "evaluationFrequency": "PT5M", + "scopes": [ + "/subscriptions/aaf177ed-1330-a9f2-80ea-fd3d7783b147" + ], + "targetResourceTypes": [ + "Microsoft.Compute/virtualMachines" + ], + "windowSize": "PT10M", + "criteria": { + "allOf": [ + { + "query": "Perf | where ObjectName == \"Processor\"", + "timeAggregation": "Average", + "metricMeasureColumn": "% Processor Time", + "resourceIdColumn": "resourceId", + "dimensions": [ + { + "name": "ComputerIp", + "operator": "Exclude", + "values": [ + "192.168.1.1" + ] + }, + { + "name": "OSType", + "operator": "Include", + "values": [ + "*" + ] + } + ], + "operator": "GreaterThan", + "threshold": 70, + "failingPeriods": { + "numberOfEvaluationPeriods": 1, + "minFailingPeriodsToAlert": 1 + } + } + ] + }, + "muteActionsDuration": "PT30M", + "actions": [ + { + "actionGroupId": "/subscriptions/1cf177ed-1330-4692-80ea-fd3d7783b147/resourcegroups/sqrapi/providers/microsoft.insights/actiongroups/myactiongroup", + "webHookProperties": { + "key11": "value11", + "key12": "value12" + } + } + ] + } + }, + { + "id": "/subscriptions/dd4bfc94-a096-412b-9c43-4bd13e35afbc/resourcegroups/MyResourceGroupName2/providers/microsoft.insights/scheduledqueryrules/heartbeat", + "name": "heartbeat", + "type": "microsoft.insights/scheduledqueryrules", + "location": "eastus", + "tags": {}, + "properties": { + "description": "Health check rule", + "severity": 4, + "enabled": true, + "evaluationFrequency": "PT5M", + "scopes": [ + "/subscriptions/aaf177ed-1330-a9f2-80ea-fd3d7783b147" + ], + "targetResourceTypes": [ + "Microsoft.Compute/virtualMachines" + ], + "windowSize": "PT10M", + "criteria": { + "allOf": [ + { + "query": "Heartbeat", + "timeAggregation": "Count", + "dimensions": [], + "operator": "GreaterThan", + "threshold": 360, + "failingPeriods": { + "numberOfEvaluationPeriods": 1, + "minFailingPeriodsToAlert": 1 + } + } + ] + }, + "muteActionsDuration": "PT30M", + "actions": [ + { + "actionGroupId": "/subscriptions/1cf177ed-1330-4692-80ea-fd3d7783b147/resourcegroups/sqrapi/providers/microsoft.insights/actiongroups/myactiongroup", + "webHookProperties": { + "key11": "value11", + "key12": "value12" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/patchScheduledQueryRule.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/patchScheduledQueryRule.json new file mode 100644 index 000000000000..9a4810c7a9ce --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/examples/patchScheduledQueryRule.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "dd4bfc94-a096-412b-9c43-4bd13e35afbc", + "resourceGroupName": "QueryResourceGroupName", + "ruleName": "heartbeat", + "api-version": "2020-05-01-preview", + "parameters": { + "properties": { + "enabled": false + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/dd4bfc94-a096-412b-9c43-4bd13e35afbc/resourcegroups/QueryResourceGroupName/providers/microsoft.insights/scheduledqueryrules/heartbeat", + "name": "heartbeat", + "type": "microsoft.insights/scheduledqueryrules", + "location": "eastus", + "tags": {}, + "properties": { + "description": "Health check rule", + "severity": 4, + "enabled": false, + "evaluationFrequency": "PT5M", + "scopes": [ + "/subscriptions/aaf177ed-1330-a9f2-80ea-fd3d7783b147" + ], + "targetResourceTypes": [ + "Microsoft.Compute/virtualMachines" + ], + "windowSize": "PT10M", + "criteria": { + "allOf": [ + { + "query": "Heartbeat", + "timeAggregation": "Count", + "dimensions": [], + "operator": "GreaterThan", + "threshold": 360, + "failingPeriods": { + "numberOfEvaluationPeriods": 1, + "minFailingPeriodsToAlert": 1 + } + } + ] + }, + "muteActionsDuration": "PT30M", + "actions": [ + { + "actionGroupId": "/subscriptions/1cf177ed-1330-4692-80ea-fd3d7783b147/resourcegroups/sqrapi/providers/microsoft.insights/actiongroups/myactiongroup", + "webHookProperties": { + "key11": "value11", + "key12": "value12" + } + } + ] + } + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/scheduledQueryRule_API.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/scheduledQueryRule_API.json new file mode 100644 index 000000000000..278a0a1a97ce --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2020-05-01-preview/scheduledQueryRule_API.json @@ -0,0 +1,622 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-05-01-preview", + "title": "Scheduled Query Rules API", + "description": "Azure Monitor client to create/update/delete Scheduled Query 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}/providers/Microsoft.Insights/scheduledQueryRules": { + "get": { + "tags": [ + "ScheduledQueryRules" + ], + "description": "Retrieve a scheduled query rule definitions in a subscription.", + "operationId": "ScheduledQueryRules_ListBySubscription", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for a list of scheduled query rules", + "schema": { + "$ref": "#/definitions/ScheduledQueryRuleResourceCollection" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/ErrorContract" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List scheduled query rules": { + "$ref": "./examples/listScheduledQueryRulesBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/scheduledQueryRules": { + "get": { + "tags": [ + "ScheduledQueryRules" + ], + "description": "Retrieve scheduled query rule definitions in a resource group.", + "operationId": "ScheduledQueryRules_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for a list of scheduled query rules", + "schema": { + "$ref": "#/definitions/ScheduledQueryRuleResourceCollection" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/ErrorContract" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List scheduled query rules": { + "$ref": "./examples/listScheduledQueryRulesByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/scheduledQueryRules/{ruleName}": { + "get": { + "tags": [ + "ScheduledQueryRules" + ], + "description": "Retrieve an scheduled query rule definition.", + "operationId": "ScheduledQueryRules_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RuleNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successful request to get a scheduled query rule", + "schema": { + "$ref": "#/definitions/ScheduledQueryRuleResource" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/ErrorContract" + } + } + }, + "x-ms-examples": { + "Get a scheduled query rule for single resource": { + "$ref": "./examples/getScheduledQueryRule.json" + } + } + }, + "put": { + "tags": [ + "ScheduledQueryRules" + ], + "description": "Creates or updates a scheduled query rule.", + "operationId": "ScheduledQueryRules_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RuleNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScheduledQueryRuleResource" + }, + "description": "The parameters of the rule to create or update." + } + ], + "responses": { + "200": { + "description": "Successful request to update a scheduled query rule", + "schema": { + "$ref": "#/definitions/ScheduledQueryRuleResource" + } + }, + "201": { + "description": "Created a scheduled query rule", + "schema": { + "$ref": "#/definitions/ScheduledQueryRuleResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorContract" + } + } + }, + "x-ms-examples": { + "Create or update a scheduled query rule for Single Resource": { + "$ref": "./examples/createOrUpdateScheduledQueryRule.json" + }, + "Create or update a scheduled query rule on Resource group(s)": { + "$ref": "./examples/createOrUpdateScheduledQueryRuleResourceGroup.json" + }, + "Create or update a scheduled query rule on Subscription ": { + "$ref": "./examples/createOrUpdateScheduledQueryRuleSubscription.json" + } + } + }, + "patch": { + "tags": [ + "ScheduledQueryRules" + ], + "description": "Update a scheduled query rule.", + "operationId": "ScheduledQueryRules_Update", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RuleNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScheduledQueryRuleResourcePatch" + }, + "description": "The parameters of the rule to update." + } + ], + "responses": { + "200": { + "description": "Successful request to update a scheduled query rule", + "schema": { + "$ref": "#/definitions/ScheduledQueryRuleResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorContract" + } + } + }, + "x-ms-examples": { + "Create or update a scheduled query rule": { + "$ref": "./examples/patchScheduledQueryRule.json" + } + } + }, + "delete": { + "tags": [ + "ScheduledQueryRules" + ], + "description": "Deletes a scheduled query rule.", + "operationId": "ScheduledQueryRules_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RuleNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorContract" + } + }, + "200": { + "description": "Successful request to delete a scheduled query rule" + }, + "204": { + "description": "No content: the request was successful, but the response is empty" + } + }, + "x-ms-examples": { + "Delete a scheduled query rule": { + "$ref": "./examples/deleteScheduledQueryRule.json" + } + } + } + } + }, + "definitions": { + "Action": { + "type": "object", + "description": "Actions to invoke when the alert fires.", + "properties": { + "actionGroupId": { + "type": "string", + "description": "Action Group resource Id to invoke when the alert fires." + }, + "webHookProperties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The dictionary of custom properties to include with the post operation. These data are appended to the webhook payload." + }, + "description": "The properties of a webhook object." + } + } + }, + "ScheduledQueryRuleProperties": { + "properties": { + "description": { + "type": "string", + "description": "The description of the scheduled query rule." + }, + "severity": { + "type": "number", + "description": "Severity of the alert. Should be an integer between [0-4]. Value of 0 is severest", + "enum": [ + "0", + "1", + "2", + "3", + "4" + ], + "x-ms-enum": { + "name": "AlertSeverity", + "modelAsString": true + } + }, + "enabled": { + "type": "boolean", + "description": "The flag which indicates whether this scheduled query rule is enabled. Value should be true or false" + }, + "scopes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of resource id's that this scheduled query rule is scoped to." + }, + "evaluationFrequency": { + "type": "string", + "format": "duration", + "description": "How often the scheduled query rule is evaluated represented in ISO 8601 duration format." + }, + "windowSize": { + "type": "string", + "format": "duration", + "description": "The period of time (in ISO 8601 duration format) on which the Alert query will be executed (bin size)." + }, + "targetResourceTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of resource type of the target resource(s) on which the alert is created/updated. For example if the scope is a resource group and targetResourceTypes is Microsoft.Compute/virtualMachines, then a different alert will be fired for each virtual machine in the resource group which meet the alert criteria" + }, + "criteria": { + "$ref": "#/definitions/ScheduledQueryRuleCriteria", + "description": "The rule criteria that defines the conditions of the scheduled query rule." + }, + "muteActionsDuration": { + "type": "string", + "format": "duration", + "description": "Mute actions for the chosen period of time (in ISO 8601 duration format) after the alert is fired." + }, + "actions": { + "type": "array", + "items": { + "$ref": "#/definitions/Action" + } + } + }, + "description": "scheduled query rule Definition" + }, + "ScheduledQueryRuleResource": { + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "required": [ + "properties" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ScheduledQueryRuleProperties", + "description": "The rule properties of the resource.", + "required": [ + "enabled", + "severity", + "evaluationFrequency", + "windowSize", + "criteria", + "scopes" + ] + } + }, + "description": "The scheduled query rule resource." + }, + "ScheduledQueryRuleResourcePatch": { + "type": "object", + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ScheduledQueryRuleProperties", + "description": "The scheduled query rule properties of the resource." + } + }, + "description": "The scheduled query rule resource for patch operations." + }, + "ScheduledQueryRuleResourceCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ScheduledQueryRuleResource" + }, + "description": "The values for the scheduled query rule resources." + } + }, + "description": "Represents a collection of scheduled query rule resources." + }, + "ScheduledQueryRuleCriteria": { + "type": "object", + "description": "The rule criteria that defines the conditions of the scheduled query rule.", + "properties": { + "allOf": { + "type": "array", + "description": "A list of conditions to evaluate against the specified scopes", + "items": { + "$ref": "#/definitions/Condition" + } + } + } + }, + "Condition": { + "type": "object", + "description": "A condition of the scheduled query rule.", + "properties": { + "query": { + "type": "string", + "description": "Log query alert" + }, + "timeAggregation": { + "type": "string", + "description": "Aggregation type", + "enum": [ + "Count", + "Average", + "Minimum", + "Maximum", + "Total" + ], + "x-ms-enum": { + "name": "timeAggregation", + "modelAsString": true + } + }, + "metricMeasureColumn": { + "type": "string", + "description": "The column containing the metric measure number." + }, + "resourceIdColumn": { + "type": "string", + "description": "The column containing the resource id. The content of the column must be a uri formatted as resource id" + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + }, + "description": "List of Dimensions conditions" + }, + "operator": { + "type": "string", + "enum": [ + "Equals", + "GreaterThan", + "GreaterThanOrEqual", + "LessThan", + "LessThanOrEqual" + ], + "x-ms-enum": { + "name": "Operator", + "modelAsString": true + }, + "description": "The criteria operator." + }, + "threshold": { + "type": "number", + "format": "double", + "description": "the criteria threshold value that activates the alert." + }, + "failingPeriods": { + "type": "object", + "description": "The minimum number of violations required within the selected lookback time window required to raise an alert.", + "properties": { + "numberOfEvaluationPeriods": { + "type": "number", + "description": "The number of aggregated lookback points. The lookback time window is calculated based on the aggregation granularity (windowSize) and the selected number of aggregated points. Default value is 1" + }, + "minFailingPeriodsToAlert": { + "type": "number", + "description": "The number of violations to trigger an alert. Should be smaller or equal to numberOfEvaluationPeriods. Default value is 1" + } + } + } + }, + "required": [ + "operator", + "threshold", + "timeAggregation" + ] + }, + "Dimension": { + "type": "object", + "description": "Dimension splitting and filtering definition", + "properties": { + "name": { + "type": "string", + "description": "Name of the dimension" + }, + "operator": { + "type": "string", + "description": "Operator for dimension values", + "enum": [ + "Include", + "Exclude" + ], + "x-ms-enum": { + "name": "operator", + "modelAsString": true + } + }, + "values": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of dimension values" + } + }, + "required": [ + "name", + "operator", + "values" + ] + }, + "ErrorContract": { + "description": "Describes the format of Error response.", + "type": "object", + "properties": { + "error": { + "description": "The error details.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The Azure subscription Id." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "RuleNameParameter": { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the rule.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/monitor/resource-manager/readme.md b/specification/monitor/resource-manager/readme.md index 8f7c32bb18f6..bb42b67ff66b 100644 --- a/specification/monitor/resource-manager/readme.md +++ b/specification/monitor/resource-manager/readme.md @@ -31,6 +31,15 @@ openapi-type: arm tag: package-2019-06 ``` +### Tag: package-2020-05-preview + +These settings apply only when `--tag=package-2020-05-preview` is specified on the command line. + +```yaml $(tag) == 'package-2020-05-preview' +input-file: +- Microsoft.Insights/preview/2020-05-01-preview/scheduledQueryRule_API.json +``` + ### Tag: package-2020-01-01-preview-only These settings apply only when `--tag=package-2020-01-01-preview-only` is specified on the command line. @@ -611,6 +620,8 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Insights/preview/2020-05-01-preview/scheduledQueryRule_API.json + - $(this-folder)/Microsoft.Insights/preview/2020-01-01-preview/managementGroupDiagnosticSettings_API.json - $(this-folder)/Microsoft.Insights/stable/2015-04-01/autoscale_API.json - $(this-folder)/Microsoft.Insights/stable/2015-04-01/operations_API.json - $(this-folder)/Microsoft.Insights/stable/2016-03-01/alertRulesIncidents_API.json @@ -634,7 +645,6 @@ input-file: - $(this-folder)/Microsoft.Insights/preview/2018-11-27-preview/vmInsightsOnboarding_API.json - $(this-folder)/Microsoft.Insights/preview/2019-10-17-preview/privateLinkScopes_API.json - $(this-folder)/Microsoft.Insights/preview/2017-05-01-preview/subscriptionDiagnosticsSettings_API.json - - $(this-folder)/Microsoft.Insights/preview/2020-01-01-preview/managementGroupDiagnosticSettings_API.json - $(this-folder)/Microsoft.Insights/stable/2019-03-01/actionGroups_API.json - $(this-folder)/Microsoft.Insights/stable/2018-09-01/actionGroups_API.json - $(this-folder)/Microsoft.Insights/stable/2018-03-01/actionGroups_API.json diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Accounts_CreateOrUpdate.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Accounts_CreateOrUpdate.json new file mode 100644 index 000000000000..a92803c51866 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Accounts_CreateOrUpdate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2020-02-01", + "body": { + "location": "eastus", + "properties": {} + } + }, + "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" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Accounts_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Accounts_Delete.json new file mode 100644 index 000000000000..73318329f900 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Accounts_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2020-02-01" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Accounts_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Accounts_Get.json new file mode 100644 index 000000000000..650dae48ea96 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Accounts_Get.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2020-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" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Accounts_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Accounts_List.json new file mode 100644 index 000000000000..20bf56f7ab11 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Accounts_List.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "api-version": "2020-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/2020-02-01/examples/Accounts_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Accounts_Update.json new file mode 100644 index 000000000000..6f490d914fab --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Accounts_Update.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2020-02-01", + "body": {} + }, + "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" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/CheckFilePathAvailability.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/CheckFilePathAvailability.json new file mode 100644 index 000000000000..d22d7fb12956 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/CheckFilePathAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "location": "eastus", + "api-version": "2020-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/2020-02-01/examples/CheckNameAvailability.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/CheckNameAvailability.json new file mode 100644 index 000000000000..e88547f488f2 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/CheckNameAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "location": "eastus", + "api-version": "2020-02-01", + "body": { + "name": "accName", + "type": "netAppAccount", + "resourceGroup": "myRG" + } + }, + "responses": { + "200": { + "body": { + "isAvailable": true + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Pools_CreateOrUpdate.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Pools_CreateOrUpdate.json new file mode 100644 index 000000000000..0c84941500f6 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Pools_CreateOrUpdate.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "api-version": "2020-02-01", + "body": { + "location": "eastus", + "properties": { + "size": 4398046511104, + "serviceLevel": "Premium" + } + } + }, + "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 + } + } + }, + "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 + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Pools_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Pools_Delete.json new file mode 100644 index 000000000000..ec4d53b2a043 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-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": "2020-02-01" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Pools_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Pools_Get.json new file mode 100644 index 000000000000..7f51ad721b64 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Pools_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "api-version": "2020-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 + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Pools_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Pools_List.json new file mode 100644 index 000000000000..6041f5c45e29 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Pools_List.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2020-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 + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Pools_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Pools_Update.json new file mode 100644 index 000000000000..22ff984d8db4 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Pools_Update.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "api-version": "2020-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 + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Snapshots_Create.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Snapshots_Create.json new file mode 100644 index 000000000000..9a91b1377ca4 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-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": "2020-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/2020-02-01/examples/Snapshots_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Snapshots_Delete.json new file mode 100644 index 000000000000..bbebd4cc739d --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-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": "2020-02-01" + }, + "responses": { + "204": {}, + "202": {}, + "200": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Snapshots_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Snapshots_Get.json new file mode 100644 index 000000000000..9c9788cb7003 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-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": "2020-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/2020-02-01/examples/Snapshots_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Snapshots_List.json new file mode 100644 index 000000000000..e1addd43c6ac --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-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": "2020-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/2020-02-01/examples/Snapshots_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Snapshots_Update.json new file mode 100644 index 000000000000..68a38dca23c2 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-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": "2020-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/2020-02-01/examples/Volumes_AuthorizeReplication.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_AuthorizeReplication.json new file mode 100644 index 000000000000..872217886089 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-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": "2020-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/2020-02-01/examples/Volumes_BreakReplication.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_BreakReplication.json new file mode 100644 index 000000000000..685aa75809e6 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_BreakReplication.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2020-02-01", + "body": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_CreateOrUpdate.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_CreateOrUpdate.json new file mode 100644 index 000000000000..b0e980a445bc --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_CreateOrUpdate.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2020-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 + } + } + }, + "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", + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + }, + "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", + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + }, + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes" + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_Delete.json new file mode 100644 index 000000000000..a85d2dbf0ced --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-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": "2020-02-01" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_DeleteReplication.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_DeleteReplication.json new file mode 100644 index 000000000000..685aa75809e6 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-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": "2020-02-01", + "body": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_Get.json new file mode 100644 index 000000000000..0c502a96678c --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2020-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", + "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/2020-02-01/examples/Volumes_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_List.json new file mode 100644 index 000000000000..c8db3c512780 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_List.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "api-version": "2020-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", + "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/2020-02-01/examples/Volumes_ReplicationStatus.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_ReplicationStatus.json new file mode 100644 index 000000000000..069d68c9e744 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-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": "2020-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/2020-02-01/examples/Volumes_ResyncReplication.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_ResyncReplication.json new file mode 100644 index 000000000000..685aa75809e6 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-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": "2020-02-01", + "body": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_Revert.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_Revert.json new file mode 100644 index 000000000000..fe15aa214f3b --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-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": "2020-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/2020-02-01/examples/Volumes_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_Update.json new file mode 100644 index 000000000000..41f296668ba0 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/examples/Volumes_Update.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2020-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", + "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/stable/2020-02-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/netapp.json new file mode 100644 index 000000000000..91a6ba8ba2ad --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2020-02-01/netapp.json @@ -0,0 +1,2770 @@ +{ + "swagger": "2.0", + "info": { + "title": "Microsoft NetApp", + "description": "Microsoft NetApp Azure Resource Provider specification", + "version": "2020-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/ResourceNameAvailability" + } + }, + "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/ResourceNameAvailability" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "CheckFilePathAvailability": { + "$ref": "examples/CheckFilePathAvailability.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": null + }, + "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" + } + }, + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "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 -- Create, update or 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-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" + } + }, + "201": { + "description": "OK - account created", + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "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": null + }, + "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" + } + }, + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "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 -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "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 -- Create, update or 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-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": null + }, + "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-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, update or delete request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "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 -- Create, update or 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-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-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" + } + ], + "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-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 source to destination.", + "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-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-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-examples": { + "Volumes_AuthorizeReplication": { + "$ref": "examples/Volumes_AuthorizeReplication.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-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-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 -- Create, update or 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-examples": { + "Snapshots_Delete": { + "$ref": "examples/Snapshots_Delete.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." + } + } + }, + "ResourceNameAvailability": { + "description": "Information regarding availability of a resource name.", + "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" + } + } + }, + "netAppAccountList": { + "description": "List of NetApp account resources", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Multiple NetApp accounts", + "items": { + "$ref": "#/definitions/netAppAccount" + } + } + } + }, + "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 + } + } + }, + "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" + } + } + } + }, + "activeDirectory": { + "description": "Active Directory", + "type": "object", + "properties": { + "activeDirectoryId": { + "type": "string", + "description": "Id of the Active Directory" + }, + "username": { + "type": "string", + "description": "Username of Active Directory domain administrator" + }, + "password": { + "type": "string", + "description": "Plain text password of Active Directory domain administrator" + }, + "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" + }, + "status": { + "type": "string", + "description": "Status of the Active Directory" + }, + "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", + "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" + ] + } + } + } + }, + "capacityPoolList": { + "description": "List of capacity pool resources", + "type": "object", + "properties": { + "value": { + "description": "List of Capacity pools", + "type": "array", + "items": { + "$ref": "#/definitions/capacityPool" + } + } + } + }, + "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" + } + } + }, + "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 + }, + "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" + } + } + }, + "volumeList": { + "description": "List of volume resources", + "type": "object", + "properties": { + "value": { + "description": "List of volumes", + "type": "array", + "items": { + "$ref": "#/definitions/volume" + } + } + } + }, + "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 + } + } + }, + "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", + "type": "array", + "items": { + "type": "string" + }, + "example": [ + "NFSv4.1" + ] + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + }, + "snapshotId": { + "title": "Snapshot ID", + "type": "string", + "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" + }, + "baremetalTenantId": { + "title": "Baremetal Tenant ID", + "type": "string", + "readOnly": true, + "description": "Unique Baremetal Tenant 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": "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", + "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": { + "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", + "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)." + } + } + }, + "exportPolicyRule": { + "description": "Volume Export Policy Rule", + "type": "object", + "properties": { + "ruleIndex": { + "type": "integer", + "description": "Order index" + }, + "unixReadOnly": { + "type": "boolean", + "description": "Read only access" + }, + "unixReadWrite": { + "type": "boolean", + "description": "Read and write access" + }, + "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" + } + } + }, + "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", + "weekly", + "monthly" + ], + "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" + } + } + } + } + } + }, + "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" + }, + "subnet": { + "title": "subnet", + "type": "string", + "description": "The subnet", + "example": "1.2.3.4" + }, + "startIp": { + "title": "startIp", + "description": "The start of IPv4 address range to use when creating a new mount target", + "type": "string", + "example": "1.2.3.4" + }, + "endIp": { + "title": "endIp", + "description": "The end of IPv4 address range to use when creating a new mount target", + "type": "string", + "example": "1.2.3.4" + }, + "gateway": { + "title": "gateway", + "description": "The gateway of the IPv4 address range to use when creating a new mount target", + "type": "string", + "example": "1.2.3.4" + }, + "netmask": { + "title": "netmask", + "description": "The netmask of the IPv4 address range to use when creating a new mount target", + "type": "string", + "example": "255.255.255.0" + }, + "smbServerFqdn": { + "title": "smbServerFQDN", + "description": "The SMB server's Fully Qualified Domain Name, FQDN", + "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" + } + } + }, + "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" + } + } + } + }, + "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" + }, + "ApiVersionParameter": { + "name": "api-version", + "description": "Version of the API to be used with the client request.", + "in": "query", + "type": "string", + "required": true, + "default": "2020-02-01" + } + } +} diff --git a/specification/netapp/resource-manager/readme.go.md b/specification/netapp/resource-manager/readme.go.md index 52d0f7d8cb50..5aff5119c44b 100644 --- a/specification/netapp/resource-manager/readme.go.md +++ b/specification/netapp/resource-manager/readme.go.md @@ -13,6 +13,7 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-netapp-2020-02-01 - tag: package-netapp-2019-11-01 - tag: package-netapp-2019-10-01 - tag: package-netapp-2019-08-01 @@ -21,6 +22,14 @@ batch: - tag: package-netapp-2019-05-01 - tag: package-2017-08-15 ``` +### Tag: package-netapp-2020-02-01 and go + +These settings apply only when `--tag=package-netapp-2020-02-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-netapp-2020-02-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-02-01/$(namespace) +``` ### Tag: package-netapp-2019-11-01 and go diff --git a/specification/netapp/resource-manager/readme.java.md b/specification/netapp/resource-manager/readme.java.md index e1cf32decd09..21f46fc4a667 100644 --- a/specification/netapp/resource-manager/readme.java.md +++ b/specification/netapp/resource-manager/readme.java.md @@ -16,6 +16,7 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-netapp ``` yaml $(java) && $(multiapi) batch: + - tag: package-netapp-2020-02-01 - tag: package-netapp-2019-11-01 - tag: package-netapp-2019-10-01 - tag: package-netapp-2019-08-01 @@ -24,6 +25,18 @@ batch: - tag: package-netapp-2019-05-01 - tag: package-2017-08-15 ``` +### Tag: package-netapp-2020-02-01 and java + +These settings apply only when `--tag=package-netapp-2020-02-01 --java` is specified on the command line. +Please also specify the `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-netapp-2020-02-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.netapp.v2020_02_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/netapp/mgmt-v2020_02_01 +regenerate-manager: true +generate-interface: true +``` ### Tag: package-netapp-2019-11-01 and java diff --git a/specification/netapp/resource-manager/readme.md b/specification/netapp/resource-manager/readme.md index 4e5a285e4313..4a4404c61528 100644 --- a/specification/netapp/resource-manager/readme.md +++ b/specification/netapp/resource-manager/readme.md @@ -28,7 +28,16 @@ These are the global settings for the Azure NetApp Files API. title: NetAppManagementClient description: Microsoft NetApp Azure Resource Provider specification openapi-type: arm -tag: package-netapp-2019-11-01 +tag: package-netapp-2020-02-01 +``` + +### Tag: package-netapp-2020-02-01 + +These settings apply only when `--tag=package-netapp-2020-02-01` is specified on the command line. + +``` yaml $(tag) == 'package-netapp-2020-02-01' +input-file: +- Microsoft.NetApp/stable/2020-02-01/netapp.json ``` ### Tag: package-netapp-2019-11-01 @@ -111,7 +120,7 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-go - repo: azure-sdk-for-java - - repo: azure-sdk-for-trenton + - repo: azure-sdk-for-trenton ``` @@ -147,6 +156,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.NetApp/stable/2020-02-01/netapp.json - $(this-folder)/Microsoft.NetApp/stable/2019-11-01/netapp.json - $(this-folder)/Microsoft.NetApp/stable/2019-10-01/netapp.json - $(this-folder)/Microsoft.NetApp/stable/2019-08-01/netapp.json @@ -156,15 +166,6 @@ input-file: - $(this-folder)/Microsoft.NetApp/preview/2017-08-15/netapp.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 -``` - ## trenton These settings apply only when `--trenton` is specified on the command line. @@ -179,3 +180,12 @@ trenton: package-name: netapp clear_output_folder: false ``` + +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/network/resource-manager/readme.md b/specification/network/resource-manager/readme.md index 8de4b3291bc9..a0022d167160 100644 --- a/specification/network/resource-manager/readme.md +++ b/specification/network/resource-manager/readme.md @@ -1625,6 +1625,50 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Network/stable/2020-05-01/applicationGateway.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/applicationSecurityGroup.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/availableDelegations.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/availableServiceAliases.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/azureFirewall.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/azureFirewallFqdnTag.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/bastionHost.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/checkDnsAvailability.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/ddosCustomPolicy.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/ddosProtectionPlan.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/endpointService.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/expressRouteCircuit.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/expressRouteCrossConnection.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/expressRoutePort.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/firewallPolicy.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/ipAllocation.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/ipGroups.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/loadBalancer.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/natGateway.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/network.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/networkInterface.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/networkProfile.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/networkSecurityGroup.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/networkVirtualAppliance.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/networkWatcher.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/operation.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/privateEndpoint.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/privateLinkService.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/publicIpAddress.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/publicIpPrefix.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/routeFilter.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/routeTable.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/securityPartnerProvider.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/serviceCommunity.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/serviceEndpointPolicy.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/serviceTags.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/usage.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/virtualNetwork.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/virtualNetworkGateway.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/virtualNetworkTap.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/virtualRouter.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/virtualWan.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/vmssNetworkInterface.json + - $(this-folder)/Microsoft.Network/stable/2020-05-01/vmssPublicIpAddress.json - $(this-folder)/Microsoft.Network/stable/2020-04-01/applicationGateway.json - $(this-folder)/Microsoft.Network/stable/2020-04-01/applicationSecurityGroup.json - $(this-folder)/Microsoft.Network/stable/2020-04-01/availableDelegations.json diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json index 2bf56cd9c2f1..67953561bc9b 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json @@ -3,7 +3,7 @@ "policyStatesResource": "latest", "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", "api-version": "2019-10-01", - "$expand": "policyEvaluationDetails" + "$expand": "PolicyEvaluationDetails" }, "responses": { "200": { diff --git a/specification/postgresql/resource-manager/readme.md b/specification/postgresql/resource-manager/readme.md index f66689491fc6..103327a277e4 100644 --- a/specification/postgresql/resource-manager/readme.md +++ b/specification/postgresql/resource-manager/readme.md @@ -194,13 +194,13 @@ require: $(this-folder)/../../../profiles/readme.md input-file: - $(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 - $(this-folder)/Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateEndpointConnections.json - $(this-folder)/Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateLinkResources.json - $(this-folder)/Microsoft.DBforPostgreSQL/stable/2020-01-01/DataEncryptionKeys.json - $(this-folder)/Microsoft.DBforPostgreSQL/stable/2020-01-01/ServerSecurityAlertPolicies.json - $(this-folder)/Microsoft.DBforPostgreSQL/preview/2018-06-01-privatepreview/PrivateEndpointConnections.json - $(this-folder)/Microsoft.DBforPostgreSQL/preview/2018-06-01-privatepreview/PrivateLinkResources.json + - $(this-folder)/Microsoft.DBforPostgreSQL/stable/2017-12-01/ServerSecurityAlertPolicies.json - $(this-folder)/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/postgresql.json ``` diff --git a/specification/redis/resource-manager/Microsoft.Cache/stable/2018-03-01/redis.json b/specification/redis/resource-manager/Microsoft.Cache/stable/2018-03-01/redis.json index 396d8b492a60..1a096df30c86 100644 --- a/specification/redis/resource-manager/Microsoft.Cache/stable/2018-03-01/redis.json +++ b/specification/redis/resource-manager/Microsoft.Cache/stable/2018-03-01/redis.json @@ -958,7 +958,7 @@ "$ref": "./examples/RedisCachePatchSchedulesCreateOrUpdate.json" } }, - "description": "Create or replace the patching schedule for Redis cache (requires Premium SKU).", + "description": "Create or replace the patching schedule for Redis cache.", "parameters": [ { "name": "resourceGroupName", @@ -1030,7 +1030,7 @@ "$ref": "./examples/RedisCachePatchSchedulesDelete.json" } }, - "description": "Deletes the patching schedule of a redis cache (requires Premium SKU).", + "description": "Deletes the patching schedule of a redis cache.", "parameters": [ { "name": "resourceGroupName", @@ -1087,7 +1087,7 @@ "$ref": "./examples/RedisCachePatchSchedulesGet.json" } }, - "description": "Gets the patching schedule of a redis cache (requires Premium SKU).", + "description": "Gets the patching schedule of a redis cache.", "parameters": [ { "name": "resourceGroupName", @@ -1898,7 +1898,7 @@ "dayOfWeek", "startHourUtc" ], - "description": "Patch schedule entry for a Premium Redis Cache." + "description": "Patch schedule entry for a Redis Cache." }, "ScheduleEntries": { "properties": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/GetNamedProviderAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/GetNamedProviderAtTenant.json new file mode 100644 index 000000000000..0c2168e47790 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/GetNamedProviderAtTenant.json @@ -0,0 +1,253 @@ +{ + "parameters": { + "$expand": "resourceTypes/aliases", + "resourceProviderNamespace": "Microsoft.Storage", + "api-version": "2020-06-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/2020-06-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/resources.json index 46af7f8d08fc..96b7e2efcdaa 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 @@ -2230,6 +2230,11 @@ "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": [ @@ -4581,6 +4586,100 @@ }, "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": { @@ -4597,6 +4696,11 @@ "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." @@ -4683,6 +4787,11 @@ "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. " @@ -4714,6 +4823,19 @@ }, "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." diff --git a/specification/resources/resource-manager/readme.md b/specification/resources/resource-manager/readme.md index 90a7ddc9e204..15f735c4451b 100644 --- a/specification/resources/resource-manager/readme.md +++ b/specification/resources/resource-manager/readme.md @@ -678,9 +678,9 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Resources/stable/2020-06-01/resources.json - $(this-folder)/Microsoft.Resources/stable/2020-01-01/subscriptions.json - $(this-folder)/Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json - - $(this-folder)/Microsoft.Resources/preview/2019-06-01-preview/templateSpecs.json - $(this-folder)/Microsoft.Features/stable/2015-12-01/features.json - $(this-folder)/Microsoft.Authorization/stable/2016-09-01/locks.json - $(this-folder)/Microsoft.Authorization/stable/2015-01-01/locks.json @@ -702,6 +702,7 @@ input-file: - $(this-folder)/Microsoft.Authorization/preview/2017-06-01-preview/policyAssignments.json - $(this-folder)/Microsoft.Authorization/preview/2017-06-01-preview/policySetDefinitions.json - $(this-folder)/Microsoft.Authorization/stable/2016-12-01/policyDefinitions.json + - $(this-folder)/Microsoft.Resources/preview/2019-06-01-preview/templateSpecs.json - $(this-folder)/Microsoft.Authorization/stable/2016-12-01/policyAssignments.json - $(this-folder)/Microsoft.Authorization/stable/2016-04-01/policy.json - $(this-folder)/Microsoft.Authorization/preview/2015-10-01-preview/policy.json 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 215221732891..ff607b71c3b9 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 @@ -5518,12 +5518,14 @@ "k1": { "type": "number", "format": "double", - "description": "This property controls the scaling function between the term frequency of each matching terms and the final relevance score of a document-query pair. By default, a value of 1.2 is used. A value of 0.0 means the score does not scale with an increase in term frequency." + "description": "This property controls the scaling function between the term frequency of each matching terms and the final relevance score of a document-query pair. By default, a value of 1.2 is used. A value of 0.0 means the score does not scale with an increase in term frequency.", + "x-nullable": true }, "b": { "type": "number", "format": "double", - "description": "This property controls how the length of a document affects the relevance score. By default, a value of 0.75 is used. A value of 0.0 means no length normalization is applied, while a value of 1.0 means the score is fully normalized by the length of the document." + "description": "This property controls how the length of a document affects the relevance score. By default, a value of 0.75 is used. A value of 0.0 means no length normalization is applied, while a value of 1.0 means the score is fully normalized by the length of the document.", + "x-nullable": true } }, "description": "Ranking function based on the Okapi BM25 similarity algorithm. BM25 is a TF-IDF-like algorithm that includes length normalization (controlled by the 'b' parameter) as well as term frequency saturation (controlled by the 'k1' parameter)." @@ -5697,10 +5699,12 @@ }, "dataChangeDetectionPolicy": { "$ref": "#/definitions/DataChangeDetectionPolicy", + "x-nullable": true, "description": "The data change detection policy for the datasource." }, "dataDeletionDetectionPolicy": { "$ref": "#/definitions/DataDeletionDetectionPolicy", + "x-nullable": true, "description": "The data deletion detection policy for the datasource." }, "@odata.etag": { @@ -5757,18 +5761,21 @@ "batchSize": { "type": "integer", "format": "int32", + "x-nullable": true, "description": "The number of items that are read from the data source and indexed as a single batch in order to improve performance. The default depends on the data source type." }, "maxFailedItems": { "type": "integer", "format": "int32", "default": 0, + "x-nullable": true, "description": "The maximum number of items that can fail indexing for indexer execution to still be considered successful. -1 means no limit. Default is 0." }, "maxFailedItemsPerBatch": { "type": "integer", "format": "int32", "default": 0, + "x-nullable": true, "description": "The maximum number of items in a single batch that can fail indexing for the batch to still be considered successful. -1 means no limit. Default is 0." }, "configuration": { @@ -5815,6 +5822,7 @@ }, "mappingFunction": { "$ref": "#/definitions/FieldMappingFunction", + "x-nullable": true, "description": "A function to apply to each source field value before indexing." } }, @@ -5853,10 +5861,12 @@ }, "schedule": { "$ref": "#/definitions/IndexingSchedule", + "x-nullable": true, "description": "The schedule for this indexer." }, "parameters": { "$ref": "#/definitions/IndexingParameters", + "x-nullable": true, "description": "Parameters for indexer execution." }, "fieldMappings": { @@ -5883,6 +5893,7 @@ "x-ms-client-name": "IsDisabled", "type": "boolean", "default": false, + "x-nullable": true, "description": "A value indicating whether the indexer is disabled. Default is false." }, "@odata.etag": { @@ -6014,6 +6025,7 @@ "type": "string", "format": "date-time", "readOnly": true, + "x-nullable": true, "description": "The end time of this indexer execution, if the execution has already completed." }, "errors": { @@ -6236,21 +6248,24 @@ "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" }, "$ref": "#/definitions/LexicalAnalyzerName", - "description": "The name of the analyzer to use for the field. This option can be used only with searchable fields and it can't be set together with either searchAnalyzer or indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields." + "description": "The name of the analyzer to use for the field. This option can be used only with searchable fields and it can't be set together with either searchAnalyzer or indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields.", + "x-nullable": true }, "searchAnalyzer": { "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" }, "$ref": "#/definitions/LexicalAnalyzerName", - "description": "The name of the analyzer used at search time for the field. This option can be used only with searchable fields. It must be set together with indexAnalyzer and it cannot be set together with the analyzer option. This property cannot be set to the name of a language analyzer; use the analyzer property instead if you need a language analyzer. This analyzer can be updated on an existing field. Must be null for complex fields." + "description": "The name of the analyzer used at search time for the field. This option can be used only with searchable fields. It must be set together with indexAnalyzer and it cannot be set together with the analyzer option. This property cannot be set to the name of a language analyzer; use the analyzer property instead if you need a language analyzer. This analyzer can be updated on an existing field. Must be null for complex fields.", + "x-nullable": true }, "indexAnalyzer": { "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" }, "$ref": "#/definitions/LexicalAnalyzerName", - "description": "The name of the analyzer used at indexing time for the field. This option can be used only with searchable fields. It must be set together with searchAnalyzer and it cannot be set together with the analyzer option. This property cannot be set to the name of a language analyzer; use the analyzer property instead if you need a language analyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields." + "description": "The name of the analyzer used at indexing time for the field. This option can be used only with searchable fields. It must be set together with searchAnalyzer and it cannot be set together with the analyzer option. This property cannot be set to the name of a language analyzer; use the analyzer property instead if you need a language analyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields.", + "x-nullable": true }, "synonymMaps": { "externalDocs": { @@ -6530,7 +6545,8 @@ "text": { "x-ms-client-name": "TextWeights", "$ref": "#/definitions/TextWeights", - "description": "Parameters that boost scoring based on text matches in certain index fields." + "description": "Parameters that boost scoring based on text matches in certain index fields.", + "x-nullable": true }, "functions": { "type": "array", @@ -6685,7 +6701,8 @@ }, "corsOptions": { "$ref": "#/definitions/CorsOptions", - "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." + "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index.", + "x-nullable": true }, "suggesters": { "type": "array", @@ -6739,7 +6756,8 @@ "description": "A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your data when you want full assurance that no one, not even Microsoft, can decrypt your data in Azure Cognitive Search. Once you have encrypted your data, it will always remain encrypted. Azure Cognitive Search will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your data will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.", "externalDocs": { "url": "https://aka.ms/azure-search-encryption-with-cmk" - } + }, + "x-nullable": true }, "similarity": { "$ref": "#/definitions/Similarity", @@ -7215,6 +7233,7 @@ }, "suggestedFrom": { "$ref": "#/definitions/TextTranslationSkillLanguage", + "x-nullable": true, "description": "The language code to translate documents from when neither the fromLanguageCode input nor the defaultFromLanguageCode parameter are provided, and the automatic language detection is unsuccessful. Default is en." } }, @@ -8360,7 +8379,8 @@ "description": "A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your data when you want full assurance that no one, not even Microsoft, can decrypt your data in Azure Cognitive Search. Once you have encrypted your data, it will always remain encrypted. Azure Cognitive Search will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your data will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.", "externalDocs": { "url": "https://aka.ms/azure-search-encryption-with-cmk" - } + }, + "x-nullable": true }, "@odata.etag": { "x-ms-client-name": "ETag", diff --git a/specification/search/data-plane/Azure.Search/preview/2020-06-30/examples/SearchServiceGetServiceStatistics.json b/specification/search/data-plane/Azure.Search/preview/2020-06-30/examples/SearchServiceGetServiceStatistics.json index 13cb75e53894..fbbff6ad079a 100644 --- a/specification/search/data-plane/Azure.Search/preview/2020-06-30/examples/SearchServiceGetServiceStatistics.json +++ b/specification/search/data-plane/Azure.Search/preview/2020-06-30/examples/SearchServiceGetServiceStatistics.json @@ -30,10 +30,6 @@ "synonymMaps": { "usage": 2, "quota": 3 - }, - "skillsetCount": { - "usage": 0, - "quota": 3 } }, "limits": { 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 0e4871756a44..57a5eedf1b93 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 @@ -5518,12 +5518,14 @@ "k1": { "type": "number", "format": "double", - "description": "This property controls the scaling function between the term frequency of each matching terms and the final relevance score of a document-query pair. By default, a value of 1.2 is used. A value of 0.0 means the score does not scale with an increase in term frequency." + "description": "This property controls the scaling function between the term frequency of each matching terms and the final relevance score of a document-query pair. By default, a value of 1.2 is used. A value of 0.0 means the score does not scale with an increase in term frequency.", + "x-nullable": true }, "b": { "type": "number", "format": "double", - "description": "This property controls how the length of a document affects the relevance score. By default, a value of 0.75 is used. A value of 0.0 means no length normalization is applied, while a value of 1.0 means the score is fully normalized by the length of the document." + "description": "This property controls how the length of a document affects the relevance score. By default, a value of 0.75 is used. A value of 0.0 means no length normalization is applied, while a value of 1.0 means the score is fully normalized by the length of the document.", + "x-nullable": true } }, "description": "Ranking function based on the Okapi BM25 similarity algorithm. BM25 is a TF-IDF-like algorithm that includes length normalization (controlled by the 'b' parameter) as well as term frequency saturation (controlled by the 'k1' parameter)." @@ -5697,10 +5699,12 @@ }, "dataChangeDetectionPolicy": { "$ref": "#/definitions/DataChangeDetectionPolicy", + "x-nullable": true, "description": "The data change detection policy for the datasource." }, "dataDeletionDetectionPolicy": { "$ref": "#/definitions/DataDeletionDetectionPolicy", + "x-nullable": true, "description": "The data deletion detection policy for the datasource." }, "@odata.etag": { @@ -5757,18 +5761,21 @@ "batchSize": { "type": "integer", "format": "int32", + "x-nullable": true, "description": "The number of items that are read from the data source and indexed as a single batch in order to improve performance. The default depends on the data source type." }, "maxFailedItems": { "type": "integer", "format": "int32", "default": 0, + "x-nullable": true, "description": "The maximum number of items that can fail indexing for indexer execution to still be considered successful. -1 means no limit. Default is 0." }, "maxFailedItemsPerBatch": { "type": "integer", "format": "int32", "default": 0, + "x-nullable": true, "description": "The maximum number of items in a single batch that can fail indexing for the batch to still be considered successful. -1 means no limit. Default is 0." }, "configuration": { @@ -5815,6 +5822,7 @@ }, "mappingFunction": { "$ref": "#/definitions/FieldMappingFunction", + "x-nullable": true, "description": "A function to apply to each source field value before indexing." } }, @@ -5853,10 +5861,12 @@ }, "schedule": { "$ref": "#/definitions/IndexingSchedule", + "x-nullable": true, "description": "The schedule for this indexer." }, "parameters": { "$ref": "#/definitions/IndexingParameters", + "x-nullable": true, "description": "Parameters for indexer execution." }, "fieldMappings": { @@ -5883,6 +5893,7 @@ "x-ms-client-name": "IsDisabled", "type": "boolean", "default": false, + "x-nullable": true, "description": "A value indicating whether the indexer is disabled. Default is false." }, "@odata.etag": { @@ -6014,6 +6025,7 @@ "type": "string", "format": "date-time", "readOnly": true, + "x-nullable": true, "description": "The end time of this indexer execution, if the execution has already completed." }, "errors": { @@ -6236,21 +6248,24 @@ "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" }, "$ref": "#/definitions/LexicalAnalyzerName", - "description": "The name of the analyzer to use for the field. This option can be used only with searchable fields and it can't be set together with either searchAnalyzer or indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields." + "description": "The name of the analyzer to use for the field. This option can be used only with searchable fields and it can't be set together with either searchAnalyzer or indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields.", + "x-nullable": true }, "searchAnalyzer": { "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" }, "$ref": "#/definitions/LexicalAnalyzerName", - "description": "The name of the analyzer used at search time for the field. This option can be used only with searchable fields. It must be set together with indexAnalyzer and it cannot be set together with the analyzer option. This property cannot be set to the name of a language analyzer; use the analyzer property instead if you need a language analyzer. This analyzer can be updated on an existing field. Must be null for complex fields." + "description": "The name of the analyzer used at search time for the field. This option can be used only with searchable fields. It must be set together with indexAnalyzer and it cannot be set together with the analyzer option. This property cannot be set to the name of a language analyzer; use the analyzer property instead if you need a language analyzer. This analyzer can be updated on an existing field. Must be null for complex fields.", + "x-nullable": true }, "indexAnalyzer": { "externalDocs": { "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" }, "$ref": "#/definitions/LexicalAnalyzerName", - "description": "The name of the analyzer used at indexing time for the field. This option can be used only with searchable fields. It must be set together with searchAnalyzer and it cannot be set together with the analyzer option. This property cannot be set to the name of a language analyzer; use the analyzer property instead if you need a language analyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields." + "description": "The name of the analyzer used at indexing time for the field. This option can be used only with searchable fields. It must be set together with searchAnalyzer and it cannot be set together with the analyzer option. This property cannot be set to the name of a language analyzer; use the analyzer property instead if you need a language analyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields.", + "x-nullable": true }, "synonymMaps": { "externalDocs": { @@ -6530,7 +6545,8 @@ "text": { "x-ms-client-name": "TextWeights", "$ref": "#/definitions/TextWeights", - "description": "Parameters that boost scoring based on text matches in certain index fields." + "description": "Parameters that boost scoring based on text matches in certain index fields.", + "x-nullable": true }, "functions": { "type": "array", @@ -6685,7 +6701,8 @@ }, "corsOptions": { "$ref": "#/definitions/CorsOptions", - "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." + "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index.", + "x-nullable": true }, "suggesters": { "type": "array", @@ -6739,7 +6756,8 @@ "description": "A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your data when you want full assurance that no one, not even Microsoft, can decrypt your data in Azure Cognitive Search. Once you have encrypted your data, it will always remain encrypted. Azure Cognitive Search will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your data will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.", "externalDocs": { "url": "https://aka.ms/azure-search-encryption-with-cmk" - } + }, + "x-nullable": true }, "similarity": { "$ref": "#/definitions/Similarity", @@ -7215,6 +7233,7 @@ }, "suggestedFrom": { "$ref": "#/definitions/TextTranslationSkillLanguage", + "x-nullable": true, "description": "The language code to translate documents from when neither the fromLanguageCode input nor the defaultFromLanguageCode parameter are provided, and the automatic language detection is unsuccessful. Default is en." } }, @@ -8360,7 +8379,8 @@ "description": "A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your data when you want full assurance that no one, not even Microsoft, can decrypt your data in Azure Cognitive Search. Once you have encrypted your data, it will always remain encrypted. Azure Cognitive Search will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your data will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.", "externalDocs": { "url": "https://aka.ms/azure-search-encryption-with-cmk" - } + }, + "x-nullable": true }, "@odata.etag": { "x-ms-client-name": "ETag", diff --git a/specification/search/data-plane/Azure.Search/readme.md b/specification/search/data-plane/Azure.Search/readme.md index 82139a0477fb..9e0c7d0e0ffa 100644 --- a/specification/search/data-plane/Azure.Search/readme.md +++ b/specification/search/data-plane/Azure.Search/readme.md @@ -162,7 +162,7 @@ directive: - RequiredReadOnlyProperties - where: - $.definitions.SuggestResult.properties["@search.text"] - suppress: + suppress: - RequiredReadOnlyProperties ``` @@ -723,6 +723,10 @@ input-file: - $(this-folder)/preview/2020-06-30-Preview/searchindex.json - $(this-folder)/preview/2020-06-30/searchservice.json - $(this-folder)/preview/2020-06-30/searchindex.json + - $(this-folder)/preview/2019-05-06-preview/searchservice.json + - $(this-folder)/preview/2019-05-06-preview/searchindex.json + - $(this-folder)/stable/2019-05-06/searchservice.json + - $(this-folder)/stable/2019-05-06/searchindex.json ``` diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotAlertTypes/GetIoTAlertType.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotAlertTypes/GetIoTAlertType.json index 59ef397db7a3..e6d553afd312 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotAlertTypes/GetIoTAlertType.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotAlertTypes/GetIoTAlertType.json @@ -21,7 +21,9 @@ "If the container doesn't need to run in privileged mode, remove the privileges from the container." ], "intent": "Exploitation,Execution", - "vendorName": "Microsoft" + "vendorName": "Microsoft", + "productName": "Azure Security Center for IoT", + "productComponentName": "IoT Hub" } } } diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotAlertTypes/GetIoTAlertTypeList.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotAlertTypes/GetIoTAlertTypeList.json index e4cab077fa81..e66b6c645391 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotAlertTypes/GetIoTAlertTypeList.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotAlertTypes/GetIoTAlertTypeList.json @@ -22,7 +22,9 @@ "If the container doesn't need to run in privileged mode, remove the privileges from the container." ], "intent": "Exploitation,Execution", - "vendorName": "Microsoft" + "vendorName": "Microsoft", + "productName": "Azure Security Center for IoT", + "productComponentName": "IoT Hub" } } ] diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotRecommendationTypes/GetIoTRecommendationType.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotRecommendationTypes/GetIoTRecommendationType.json new file mode 100644 index 000000000000..1e2008614da0 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotRecommendationTypes/GetIoTRecommendationType.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "resourceGroupName": "myGroup", + "solutionName": "mySolution", + "iotRecommendationTypeName": "IoT_VulnerableTLSCipherSuite" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myGroup/providers/Microsoft.Security/iotSecuritySolutions/mySolution/iotRecommendationTypes/IoT_VulnerableTLSCipherSuite", + "name": "IoT_VulnerableTLSCipherSuite", + "type": "Microsoft.Security/iotSecuritySolutions/iotRecommendationTypes", + "properties": { + "recommendationDisplayName": "TLS cipher suite upgrade needed", + "severity": "Medium", + "description": "Insecure TLS configurations detected. Immediate TLS cipher suite upgrade recommended.", + "remediationSteps": [ + "Upgrade your TLS cipher suite to a secure configuration. See the Guide to TLS Standards Compliance for more information." + ], + "vendorName": "Microsoft", + "control": "Communication between device and IoT Hub is not optimized", + "productName": "Azure Security Center for IoT", + "productComponentName": "IoT Hub" + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotRecommendationTypes/GetIoTRecommendationTypeList.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotRecommendationTypes/GetIoTRecommendationTypeList.json new file mode 100644 index 000000000000..1632037b20c2 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotRecommendationTypes/GetIoTRecommendationTypeList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "resourceGroupName": "myGroup", + "solutionName": "mySolution" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myGroup/providers/Microsoft.Security/iotSecuritySolutions/mySolution/iotRecommendationTypes/IoT_VulnerableTLSCipherSuite", + "name": "IoT_VulnerableTLSCipherSuite", + "type": "Microsoft.Security/iotSecuritySolutions/iotRecommendationTypes", + "properties": { + "recommendationDisplayName": "TLS cipher suite upgrade needed", + "severity": "Medium", + "description": "Insecure TLS configurations detected. Immediate TLS cipher suite upgrade recommended.", + "remediationSteps": [ + "Upgrade your TLS cipher suite to a secure configuration. See the Guide to TLS Standards Compliance for more information." + ], + "vendorName": "Microsoft", + "control": "Communication between device and IoT Hub is not optimized", + "productName": "Azure Security Center for IoT", + "productComponentName": "IoT Hub" + } + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotRecommendations/GetIoTRecommendation.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotRecommendations/GetIoTRecommendation.json new file mode 100644 index 000000000000..ef023e236bfb --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotRecommendations/GetIoTRecommendation.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "resourceGroupName": "myGroup", + "solutionName": "mySolution", + "iotRecommendationId": "903e76ff-17eb-4bac-ac8a-2bc31ab68fd8" + }, + "responses": { + "200": { + "body": { + "name": "IoT_Baseline|device-1", + "properties": { + "recommendationType": "IoT_Baseline", + "deviceId": "device-1", + "discoveredTimeUtc": "2020-05-13T06:32:25Z", + "recommendationAdditionalData": { + "SnapshotId": "48519d58-4e35-46cd-aed5-6251af95ed50", + "TotalFailedRules": "7", + "TotalRulesFailedDuoToError": "1", + "TotalInformationalFailedRules": "2", + "TotalCriticalFailedRules": "3", + "TotalWarningFailedRules": "1" + } + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotRecommendations/GetIoTRecommendationList.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotRecommendations/GetIoTRecommendationList.json new file mode 100644 index 000000000000..d1e9b306b467 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IotRecommendations/GetIoTRecommendationList.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "resourceGroupName": "myGroup", + "solutionName": "mySolution", + "recommendationType": "IoT_Baseline", + "$limit": 1 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "IoT_Baseline|device-1", + "properties": { + "recommendationType": "IoT_Baseline", + "deviceId": "device-1", + "discoveredTimeUtc": "2020-05-13T06:32:25Z", + "recommendationAdditionalData": { + "SnapshotId": "48519d58-4e35-46cd-aed5-6251af95ed50", + "TotalFailedRules": "7", + "TotalRulesFailedDuoToError": "1", + "TotalInformationalFailedRules": "2", + "TotalCriticalFailedRules": "3", + "TotalWarningFailedRules": "1" + } + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myGroup/providers/Microsoft.Security/iotSecuritySolutions/mySolution/iotRecommendations?api-version=2019-08-01&recommendationType=IoT_Baseline&$limit=1&$skipToken=903e76ff-17eb-4bac-ac8a-2bc31ab68fd8", + "totalCount": 23 + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotAlertTypes.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotAlertTypes.json index a98dca5b354b..8dbda6e511ad 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotAlertTypes.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotAlertTypes.json @@ -208,6 +208,18 @@ "example": "IoTSecurity", "description": "The name of the alert provider or internal partner" }, + "productName": { + "readOnly": true, + "type": "string", + "example": "Azure Security Center for IoT", + "description": "The name of the product which published this alert" + }, + "productComponentName": { + "readOnly": true, + "type": "string", + "example": "IoT Hub", + "description": "The name of a component inside the product which generated the alert" + }, "vendorName": { "readOnly": true, "type": "string", diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotRecommendationTypes.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotRecommendationTypes.json new file mode 100644 index 000000000000..e4d95b007eb8 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotRecommendationTypes.json @@ -0,0 +1,269 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2019-08-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/iotRecommendationTypes": { + "get": { + "x-ms-examples": { + "Get IoT Recommendation Types": { + "$ref": "./examples/IotRecommendationTypes/GetIoTRecommendationTypeList.json" + } + }, + "tags": [ + "IoT Security Recommendation Types" + ], + "description": "List IoT recommendation types", + "operationId": "IotRecommendationTypes_List", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SolutionName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/IotRecommendationTypeList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/iotRecommendationTypes/{iotRecommendationTypeName}": { + "get": { + "x-ms-examples": { + "Get IoT Recommendation Type": { + "$ref": "./examples/IotRecommendationTypes/GetIoTRecommendationType.json" + } + }, + "tags": [ + "IoT Security Recommendation Types" + ], + "operationId": "IotRecommendationTypes_Get", + "description": "Get IoT recommendation type", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SolutionName" + }, + { + "in": "path", + "name": "iotRecommendationTypeName", + "required": true, + "type": "string", + "description": "Name of the recommendation type" + } + ], + "responses": { + "200": { + "description": "IoT recommendation type", + "schema": { + "$ref": "#/definitions/IotRecommendationType" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "IotRecommendationTypeList": { + "type": "object", + "description": "List of recommendation types", + "properties": { + "value": { + "type": "array", + "description": "List data", + "items": { + "$ref": "#/definitions/IotRecommendationType" + } + } + } + }, + "IotRecommendationType": { + "type": "object", + "description": "IoT recommendation type.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Recommendation type properties", + "$ref": "#/definitions/IotRecommendationTypeProperties" + } + }, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + } + ] + }, + "IotRecommendationTypeProperties": { + "type": "object", + "description": "IoT recommendation type information.", + "properties": { + "recommendationDisplayName": { + "readOnly": true, + "type": "string", + "example": "TLS cipher suite upgrade needed", + "description": "The display name of the recommendation" + }, + "severity": { + "readOnly": true, + "type": "string", + "example": "Medium", + "description": "The severity of the recommendation", + "enum": [ + "Unknown", + "NotApplicable", + "Healthy", + "OffByPolicy", + "Low", + "Medium", + "High" + ], + "x-ms-enum": { + "name": "recommendationSeverity", + "modelAsString": true, + "values": [ + { + "value": "Unknown" + }, + { + "value": "NotApplicable" + }, + { + "value": "Healthy" + }, + { + "value": "OffByPolicy" + }, + { + "value": "Low" + }, + { + "value": "Medium" + }, + { + "value": "High" + } + ] + } + }, + "description": { + "readOnly": true, + "type": "string", + "description": "Description of the suspected vulnerability and meaning.", + "example": "Insecure TLS configurations detected. Immediate TLS cipher suite upgrade recommended." + }, + "productName": { + "readOnly": true, + "type": "string", + "example": "Azure Security Center for IoT", + "description": "The name of the product which published this recommendation" + }, + "productComponentName": { + "readOnly": true, + "type": "string", + "example": "IoT Hub", + "description": "The name of a component inside the product which generated the recommendation" + }, + "vendorName": { + "readOnly": true, + "type": "string", + "example": "Microsoft", + "description": "The name of the vendor that raised the recommendation" + }, + "control": { + "readOnly": true, + "type": "string", + "example": "Communication between device and IoT Hub is not optimized", + "description": "The name of the recommendation's control category " + }, + "remediationSteps": { + "readOnly": true, + "description": "Manual action items to take to resolve the recommendation", + "type": "array", + "items": { + "type": "string", + "example": "Upgrade your TLS cipher suite to a secure configuration. See the Guide to TLS Standards Compliance for more information." + } + }, + "dataSource": { + "readOnly": true, + "description": "The alert's data source", + "type": "string", + "example": "IoT Hub" + } + } + } + }, + "parameters": { + "SolutionName": { + "name": "solutionName", + "in": "path", + "required": true, + "description": "The name of the IoT Security solution.", + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotRecommendations.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotRecommendations.json new file mode 100644 index 000000000000..c50b08a6f7c8 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/iotRecommendations.json @@ -0,0 +1,243 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2019-08-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/iotRecommendations": { + "get": { + "x-ms-examples": { + "Get IoT Recommendations": { + "$ref": "./examples/IotRecommendations/GetIoTRecommendationList.json" + } + }, + "tags": [ + "IoT Security Recommendations" + ], + "description": "List IoT recommendations", + "operationId": "IotRecommendations_List", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SolutionName" + }, + { + "in": "query", + "name": "recommendationType", + "required": false, + "type": "string", + "description": "Filter by recommendation type" + }, + { + "in": "query", + "name": "$limit", + "required": false, + "type": "integer", + "format": "int32", + "description": "Limit the number of items returned in a single page" + }, + { + "in": "query", + "name": "$skipToken", + "required": false, + "type": "string", + "description": "Skip token used for pagination" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/IotRecommendationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/iotRecommendations/{iotRecommendationId}": { + "get": { + "x-ms-examples": { + "Get IoT Recommendation": { + "$ref": "./examples/IotRecommendations/GetIoTRecommendation.json" + } + }, + "tags": [ + "IoT Security Recommendations" + ], + "operationId": "IotRecommendations_Get", + "description": "Get IoT recommendation", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SolutionName" + }, + { + "in": "path", + "name": "iotRecommendationId", + "required": true, + "type": "string", + "description": "Id of the recommendation" + } + ], + "responses": { + "200": { + "description": "IoT recommendation", + "schema": { + "$ref": "#/definitions/IotRecommendation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "IotRecommendationList": { + "description": "List of IoT recommendations", + "type": "object", + "properties": { + "value": { + "description": "List data", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/IotRecommendation" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "When available, follow the URI to get the next page of data" + }, + "totalCount": { + "readOnly": true, + "format": "int32", + "type": "integer", + "description": "Total count of recommendations that conforms with the given filter options (not affected by page size)" + } + } + }, + "IotRecommendation": { + "type": "object", + "description": "IoT recommendation", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Recommendation properties", + "$ref": "#/definitions/IotRecommendationProperties" + } + }, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + } + ] + }, + "IotRecommendationProperties": { + "type": "object", + "description": "IoT recommendation properties", + "properties": { + "deviceId": { + "description": "Identifier of the device being reported on", + "readOnly": true, + "type": "string", + "example": "device-1" + }, + "recommendationType": { + "description": "The type name of the recommendation", + "readOnly": true, + "type": "string", + "example": "IoT_PrivilegedContainer" + }, + "discoveredTimeUtc": { + "description": "The discovery time of the recommendation", + "readOnly": true, + "type": "string", + "example": "2020-05-13T06:32:25Z" + }, + "recommendationAdditionalData": { + "type": "object", + "description": "A bag of fields which extends the recommendation information", + "example": { + "SnapshotId": "48519d58-4e35-46cd-aed5-6251af95ed50", + "TotalFailedRules": "7", + "TotalRulesFailedDuoToError": "1", + "TotalInformationalFailedRules": "2", + "TotalCriticalFailedRules": "3", + "TotalWarningFailedRules": "1" + } + } + } + } + }, + "parameters": { + "SolutionName": { + "name": "solutionName", + "in": "path", + "required": true, + "description": "The name of the IoT Security solution.", + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/common/v1/types.json b/specification/security/resource-manager/common/v1/types.json index 48bec7b159a3..fca7f0ceb5c6 100644 --- a/specification/security/resource-manager/common/v1/types.json +++ b/specification/security/resource-manager/common/v1/types.json @@ -169,7 +169,8 @@ "description": "The platform where the assessed resource resides", "enum": [ "Azure", - "OnPremise" + "OnPremise", + "OnPremiseSql" ], "x-ms-enum": { "name": "source", @@ -182,6 +183,10 @@ { "value": "OnPremise", "description": "Resource in an on premise machine connected to Azure cloud" + }, + { + "value": "OnPremiseSql", + "description": "SQL Resource in an on premise machine connected to Azure cloud" } ] } @@ -242,6 +247,30 @@ "machineName" ] }, + "OnPremiseSqlResourceDetails": { + "type": "object", + "description": "Details of the On Premise Sql resource that was assessed", + "x-ms-discriminator-value": "OnPremiseSql", + "allOf": [ + { + "$ref": "#/definitions/OnPremiseResourceDetails" + } + ], + "properties": { + "serverName": { + "type": "string", + "description": "The Sql server name installed on the machine" + }, + "databaseName": { + "type": "string", + "description": "The Sql database name installed on the machine" + } + }, + "required": [ + "serverName", + "databaseName" + ] + }, "AzureResourceLinks": { "description": "array of azure resource IDs", "readOnly": true, diff --git a/specification/security/resource-manager/readme.md b/specification/security/resource-manager/readme.md index 3991984c9458..792613468d24 100644 --- a/specification/security/resource-manager/readme.md +++ b/specification/security/resource-manager/readme.md @@ -40,6 +40,10 @@ directive: from: alertTypes.json where: '$.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/alertTypes"].get' reason: The list returns limited number of items + - suppress: PageableOperation + from: recommendationTypes.json + where: '$.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/recommendationTypes"].get' + reason: The list returns limited number of items ``` ### Basic Information @@ -151,6 +155,8 @@ input-file: - 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 - Microsoft.Security/preview/2015-06-01-preview/locations.json - Microsoft.Security/preview/2015-06-01-preview/operations.json - Microsoft.Security/preview/2015-06-01-preview/tasks.json @@ -310,6 +316,8 @@ input-file: - Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.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 # Needed when there is more than one input file override-info: @@ -447,6 +455,8 @@ input-file: - $(this-folder)/Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json - $(this-folder)/Microsoft.Security/stable/2019-08-01/iotAlertTypes.json - $(this-folder)/Microsoft.Security/stable/2019-08-01/iotAlerts.json + - $(this-folder)/Microsoft.Security/stable/2019-08-01/iotRecommendationTypes.json + - $(this-folder)/Microsoft.Security/stable/2019-08-01/iotRecommendations.json - $(this-folder)/Microsoft.Security/stable/2020-01-01/serverVulnerabilityAssessments.json - $(this-folder)/Microsoft.Security/stable/2020-01-01/assessmentMetadata.json - $(this-folder)/Microsoft.Security/stable/2020-01-01/assessments.json diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ManagedClusterDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ManagedClusterDeleteOperation_example.json index e638a101cb12..d59d195b8d47 100644 --- a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ManagedClusterDeleteOperation_example.json +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ManagedClusterDeleteOperation_example.json @@ -11,6 +11,7 @@ "Location": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2020-01-01-preview" } }, - "204": {} + "204": {}, + "200": {} } } diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ManagedClusterGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ManagedClusterGetOperation_example.json index ba1fe79076be..cfe0add5855e 100644 --- a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ManagedClusterGetOperation_example.json +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ManagedClusterGetOperation_example.json @@ -29,17 +29,20 @@ { "frontendPort": 80, "backendPort": 80, - "protocol": "http" + "protocol": "http", + "probeProtocol": "http" }, { "frontendPort": 443, "backendPort": 443, - "protocol": "http" + "protocol": "http", + "probeProtocol": "http" }, { "frontendPort": 10000, "backendPort": 10000, - "protocol": "tcp" + "protocol": "tcp", + "probeProtocol": "tcp" } ], "adminUserName": "vmadmin", diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ManagedClusterPatchOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ManagedClusterPatchOperation_example.json index 1f95cbff7e49..596c355ccaa7 100644 --- a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ManagedClusterPatchOperation_example.json +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ManagedClusterPatchOperation_example.json @@ -16,17 +16,20 @@ { "frontendPort": 80, "backendPort": 80, - "protocol": "http" + "protocol": "http", + "probeProtocol": "http" }, { "frontendPort": 443, "backendPort": 443, - "protocol": "http" + "protocol": "http", + "probeProtocol": "http" }, { "frontendPort": 10000, "backendPort": 10000, - "protocol": "tcp" + "protocol": "tcp", + "probeProtocol": "tcp" } ], "fabricSettings": [ @@ -113,17 +116,20 @@ { "frontendPort": 80, "backendPort": 80, - "protocol": "http" + "protocol": "http", + "probeProtocol": "http" }, { "frontendPort": 443, "backendPort": 443, - "protocol": "http" + "protocol": "http", + "probeProtocol": "http" }, { "frontendPort": 10000, "backendPort": 10000, - "protocol": "tcp" + "protocol": "tcp", + "probeProtocol": "tcp" } ], "adminUserName": "vmadmin", @@ -211,17 +217,20 @@ { "frontendPort": 80, "backendPort": 80, - "protocol": "http" + "protocol": "http", + "probeProtocol": "http" }, { "frontendPort": 443, "backendPort": 443, - "protocol": "http" + "protocol": "http", + "probeProtocol": "http" }, { "frontendPort": 10000, "backendPort": 10000, - "protocol": "tcp" + "protocol": "tcp", + "probeProtocol": "http" } ], "adminUserName": "vmadmin", diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ManagedClusterPutOperation_example_max.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ManagedClusterPutOperation_example_max.json index 1ed5700b5e16..6bd51c60283f 100644 --- a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ManagedClusterPutOperation_example_max.json +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ManagedClusterPutOperation_example_max.json @@ -21,17 +21,20 @@ { "frontendPort": 80, "backendPort": 80, - "protocol": "http" + "protocol": "http", + "probeProtocol": "http" }, { "frontendPort": 443, "backendPort": 443, - "protocol": "http" + "protocol": "http", + "probeProtocol": "http" }, { "frontendPort": 10000, "backendPort": 10000, - "protocol": "tcp" + "protocol": "tcp", + "probeProtocol": "http" } ], "fabricSettings": [ @@ -122,17 +125,20 @@ { "frontendPort": 80, "backendPort": 80, - "protocol": "http" + "protocol": "http", + "probeProtocol": "http" }, { "frontendPort": 443, "backendPort": 443, - "protocol": "http" + "protocol": "http", + "probeProtocol": "http" }, { "frontendPort": 10000, "backendPort": 10000, - "protocol": "tcp" + "protocol": "tcp", + "probeProtocol": "tcp" } ], "adminUserName": "vmadmin", @@ -223,17 +229,20 @@ { "frontendPort": 80, "backendPort": 80, - "protocol": "http" + "protocol": "http", + "probeProtocol": "http" }, { "frontendPort": 443, "backendPort": 443, - "protocol": "http" + "protocol": "http", + "probeProtocol": "http" }, { "frontendPort": 10000, "backendPort": 10000, - "protocol": "tcp" + "protocol": "tcp", + "probeProtocol": "tcp" } ], "adminUserName": "vmadmin", @@ -324,17 +333,20 @@ { "frontendPort": 80, "backendPort": 80, - "protocol": "http" + "protocol": "http", + "probeProtocol": "http" }, { "frontendPort": 443, "backendPort": 443, - "protocol": "http" + "protocol": "http", + "probeProtocol": "http" }, { "frontendPort": 10000, "backendPort": 10000, - "protocol": "tcp" + "protocol": "tcp", + "probeProtocol": "tcp" } ], "adminUserName": "vmadmin", diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ClusterVersionsListByOS_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ManagedClusterVersionsListByOS_example.json similarity index 100% rename from specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ClusterVersionsListByOS_example.json rename to specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/ManagedClusterVersionsListByOS_example.json diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypeDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypeDeleteOperation_example.json index 2f38d90c3430..577f254ca490 100644 --- a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypeDeleteOperation_example.json +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypeDeleteOperation_example.json @@ -12,6 +12,7 @@ "Location": "http://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/managedClusterOperationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2020-01-01-preview" } }, - "204": {} + "204": {}, + "200": {} } } diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypeGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypeGetOperation_example.json index 5cc62be5cf7d..da4b281b58b3 100644 --- a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypeGetOperation_example.json +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypeGetOperation_example.json @@ -16,7 +16,7 @@ "tags": {}, "properties": { "isPrimary": true, - "diskSizeInGB": 100, + "dataDiskSizeGB": 100, "placementProperties": {}, "capacities": {}, "vmSize": "Standard_D2", diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypeListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypeListOperation_example.json index 1a613aad579c..6f4b84062835 100644 --- a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypeListOperation_example.json +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypeListOperation_example.json @@ -17,7 +17,7 @@ "tags": {}, "properties": { "isPrimary": true, - "diskSizeInGB": 100, + "dataDiskSizeGB": 100, "placementProperties": {}, "capacities": {}, "vmSize": "Standard_D2", @@ -35,7 +35,7 @@ "tags": {}, "properties": { "isPrimary": false, - "diskSizeInGB": 200, + "dataDiskSizeGB": 200, "placementProperties": {}, "capacities": {}, "vmSize": "Standard_D3", @@ -62,7 +62,6 @@ "name": "Microsoft.Azure.Geneva.GenevaMonitoring", "properties": { "autoUpgradeMinorVersion": true, - "enableAutomaticUpgrade": true, "publisher": "Microsoft.Azure.Geneva", "type": "GenevaMonitoring", "typeHandlerVersion": "2.0", diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypePatchOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypePatchOperation_example.json index 2237dbe4aa33..65d76cff104f 100644 --- a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypePatchOperation_example.json +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypePatchOperation_example.json @@ -37,7 +37,6 @@ "name": "Microsoft.Azure.Geneva.GenevaMonitoring", "properties": { "autoUpgradeMinorVersion": true, - "enableAutomaticUpgrade": true, "publisher": "Microsoft.Azure.Geneva", "type": "GenevaMonitoring", "typeHandlerVersion": "2.0", @@ -63,7 +62,7 @@ }, "properties": { "isPrimary": false, - "diskSizeInGB": 200, + "dataDiskSizeGB": 200, "placementProperties": { "HasSSD": "true", "NodeColor": "green", @@ -96,7 +95,6 @@ "name": "Microsoft.Azure.Geneva.GenevaMonitoring", "properties": { "autoUpgradeMinorVersion": true, - "enableAutomaticUpgrade": true, "publisher": "Microsoft.Azure.Geneva", "type": "GenevaMonitoring", "typeHandlerVersion": "2.0", @@ -121,7 +119,7 @@ }, "properties": { "isPrimary": false, - "diskSizeInGB": 200, + "dataDiskSizeGB": 200, "placementProperties": { "HasSSD": "true", "NodeColor": "green", @@ -154,7 +152,6 @@ "name": "Microsoft.Azure.Geneva.GenevaMonitoring", "properties": { "autoUpgradeMinorVersion": true, - "enableAutomaticUpgrade": true, "publisher": "Microsoft.Azure.Geneva", "type": "GenevaMonitoring", "typeHandlerVersion": "2.0", diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypePutOperation_example_max.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypePutOperation_example_max.json index a6a90dab1744..4935cda63706 100644 --- a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypePutOperation_example_max.json +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypePutOperation_example_max.json @@ -8,7 +8,7 @@ "parameters": { "properties": { "isPrimary": false, - "diskSizeInGB": 200, + "dataDiskSizeGB": 200, "placementProperties": { "HasSSD": "true", "NodeColor": "green", @@ -41,7 +41,6 @@ "name": "Microsoft.Azure.Geneva.GenevaMonitoring", "properties": { "autoUpgradeMinorVersion": true, - "enableAutomaticUpgrade": true, "publisher": "Microsoft.Azure.Geneva", "type": "GenevaMonitoring", "typeHandlerVersion": "2.0", @@ -65,7 +64,7 @@ "tags": {}, "properties": { "isPrimary": false, - "diskSizeInGB": 200, + "dataDiskSizeGB": 200, "placementProperties": { "HasSSD": "true", "NodeColor": "green", @@ -98,7 +97,6 @@ "name": "Microsoft.Azure.Geneva.GenevaMonitoring", "properties": { "autoUpgradeMinorVersion": true, - "enableAutomaticUpgrade": true, "publisher": "Microsoft.Azure.Geneva", "type": "GenevaMonitoring", "typeHandlerVersion": "2.0", @@ -121,7 +119,7 @@ "tags": {}, "properties": { "isPrimary": false, - "diskSizeInGB": 200, + "dataDiskSizeGB": 200, "placementProperties": { "HasSSD": "true", "NodeColor": "green", @@ -154,7 +152,7 @@ "name": "Microsoft.Azure.Geneva.GenevaMonitoring", "properties": { "autoUpgradeMinorVersion": true, - "enableAutomaticUpgrade": true, + "forceUpdateTag": "v.1.0", "publisher": "Microsoft.Azure.Geneva", "type": "GenevaMonitoring", "typeHandlerVersion": "2.0", @@ -177,7 +175,7 @@ "tags": {}, "properties": { "isPrimary": false, - "diskSizeInGB": 200, + "dataDiskSizeGB": 200, "placementProperties": { "HasSSD": "true", "NodeColor": "green", @@ -210,7 +208,7 @@ "name": "Microsoft.Azure.Geneva.GenevaMonitoring", "properties": { "autoUpgradeMinorVersion": true, - "enableAutomaticUpgrade": true, + "forceUpdateTag": "v.1.0", "publisher": "Microsoft.Azure.Geneva", "type": "GenevaMonitoring", "typeHandlerVersion": "2.0", diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypePutOperation_example_min.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypePutOperation_example_min.json index 5c78c18a91fd..81608fe06218 100644 --- a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypePutOperation_example_min.json +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/examples/NodeTypePutOperation_example_min.json @@ -8,7 +8,7 @@ "parameters": { "properties": { "isPrimary": false, - "diskSizeInGB": 200, + "dataDiskSizeGB": 200, "vmSize": "Standard_D3", "vmImagePublisher": "MicrosoftWindowsServer", "vmImageOffer": "WindowsServer", @@ -31,7 +31,7 @@ "tags": {}, "properties": { "isPrimary": false, - "diskSizeInGB": 200, + "dataDiskSizeGB": 200, "placementProperties": {}, "capacities": {}, "vmSize": "Standard_D3", @@ -55,7 +55,7 @@ "tags": {}, "properties": { "isPrimary": false, - "diskSizeInGB": 200, + "dataDiskSizeGB": 200, "placementProperties": {}, "capacities": {}, "vmSize": "Standard_D3", @@ -79,7 +79,7 @@ "tags": {}, "properties": { "isPrimary": false, - "diskSizeInGB": 200, + "dataDiskSizeGB": 200, "placementProperties": {}, "capacities": {}, "vmSize": "Standard_D3", diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/managedcluster.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/managedcluster.json index c32defd2363e..b5ba10c91469 100644 --- a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/managedcluster.json +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/managedcluster.json @@ -51,7 +51,7 @@ } ], "tags": [ - "Cluster" + "ManagedCluster" ], "x-ms-pageable": { "nextLinkName": "nextLink" @@ -327,6 +327,9 @@ "204": { "description": "The resource was not found." }, + "200": { + "description": "The operation completed successfully." + }, "default": { "description": "The detailed error response.", "schema": { @@ -374,7 +377,7 @@ }, "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/managedclusters/locations/{location}/osType/{osType}/clusterVersions": { "get": { - "operationId": "ClusterVersions_ListByOS", + "operationId": "ManagedClusterVersions_ListByOS", "summary": "Gets the list of Service Fabric cluster code versions available for the specified OS type.", "description": "Gets all available code versions for Service Fabric cluster resources by OS type.", "parameters": [ @@ -393,11 +396,11 @@ ], "x-ms-examples": { "List cluster versions by OS": { - "$ref": "./examples/ClusterVersionsListByOS_example.json" + "$ref": "./examples/ManagedClusterVersionsListByOS_example.json" } }, "tags": [ - "ClusterVersion" + "ManagedClusterVersion" ], "responses": { "200": { @@ -405,10 +408,16 @@ "schema": { "type": "array", "items": { - "$ref": "#/definitions/ClusterVersionDetails" + "$ref": "#/definitions/ManagedClusterVersionDetails" }, "description": "The list of available Service Fabric runtime versions." } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } } } } @@ -416,26 +425,21 @@ }, "definitions": { "AzureActiveDirectory": { - "required": [ - "tenantId", - "clusterApplication", - "clientApplication" - ], "properties": { "tenantId": { - "type": "boolean", + "type": "string", "description": "Azure active directory tenant id." }, "clusterApplication": { "type": "string", - "description": "Azure active directory cluster application." + "description": "Azure active directory cluster application id." }, "clientApplication": { "type": "string", - "description": "Azure active directory client application." + "description": "Azure active directory client application id." } }, - "description": "Azure active directory." + "description": "The settings to enable AAD authentication on the cluster." }, "ClientCertificate": { "required": [ @@ -487,7 +491,7 @@ "Ready" ] }, - "ClusterVersionDetails": { + "ManagedClusterVersionDetails": { "properties": { "msiVersion": { "type": "string", @@ -514,12 +518,14 @@ "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 @@ -629,11 +635,13 @@ }, "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 }, @@ -649,38 +657,37 @@ }, "loadBalancingRules": { "type": "array", - "$ref": "#/definitions/LoadBalancingRule", - "description": "Describes a load balancing rule." + "items": { + "$ref": "#/definitions/LoadBalancingRule" + }, + "description": "Describes load balancing rules." }, "clients": { "type": "array", - "$ref": "#/definitions/ClientCertificate", + "items": { + "$ref": "#/definitions/ClientCertificate" + }, "description": "client certificates for the cluster." }, "azureActiveDirectory": { - "type": "array", "$ref": "#/definitions/AzureActiveDirectory", "description": "Azure active directory." }, "fabricSettings": { "type": "array", - "$ref": "#/definitions/SettingsSectionDescription", + "items": { + "$ref": "#/definitions/SettingsSectionDescription" + }, "description": "The list of custom fabric settings to configure the cluster." }, + "useTestExtension": { + "type": "boolean", + "description": "Use service fabric test vm extension, by default it's false." + }, "provisioningState": { - "type": "string", + "$ref": "#/definitions/ManagedResourceProvisioningState", "description": "The provisioning state of the managed cluster resource.", - "readOnly": true, - "enum": [ - "Updating", - "Succeeded", - "Failed", - "Canceled" - ], - "x-ms-enum": { - "name": "ProvisioningState", - "modelAsString": true - } + "readOnly": true }, "clusterCodeVersion": { "type": "string", @@ -696,6 +703,7 @@ }, "reverseProxyEndpointPort": { "type": "integer", + "format": "int32", "description": "The endpoint used by reverse proxy." } }, @@ -705,30 +713,37 @@ "properties": { "clientConnectionPort": { "type": "integer", + "format": "int32", "description": "The port used for client connections to the cluster." }, "httpGatewayConnectionPort": { "type": "integer", + "format": "int32", "description": "The port used for http connections to the cluster." }, "loadBalancingRules": { "type": "array", - "$ref": "#/definitions/LoadBalancingRule", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + }, "description": "Describes a load balancing rule." }, "clients": { "type": "array", - "$ref": "#/definitions/ClientCertificate", + "items": { + "$ref": "#/definitions/ClientCertificate" + }, "description": "client certificates for the cluster." }, "azureActiveDirectory": { - "type": "array", "$ref": "#/definitions/AzureActiveDirectory", "description": "Azure active directory." }, "fabricSettings": { "type": "array", - "$ref": "#/definitions/SettingsSectionDescription", + "items": { + "$ref": "#/definitions/SettingsSectionDescription" + }, "description": "The list of custom fabric settings to configure the cluster." }, "clusterCodeVersion": { @@ -745,6 +760,7 @@ }, "reverseProxyEndpointPort": { "type": "integer", + "format": "int32", "description": "The endpoint used by reverse proxy." } }, @@ -978,6 +994,22 @@ }, "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" + ] + }, "OperationListResult": { "properties": { "value": { diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/nodetype.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/nodetype.json index a3105dbd9133..04f22ffa6b1b 100644 --- a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/nodetype.json +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2020-01-01-preview/nodetype.json @@ -523,6 +523,9 @@ "204": { "description": "The resource was not found." }, + "200": { + "description": "The operation completed successfully." + }, "default": { "description": "The detailed error response.", "schema": { @@ -540,7 +543,7 @@ "description": "The node type definition" }, { - "$ref": "#/definitions/ProxyResource" + "$ref": "#/definitions/ManagedProxyResource" } ], "properties": { @@ -575,7 +578,7 @@ "required": [ "isPrimary", "vmInstanceCount", - "diskSizeInGB" + "dataDiskSizeGB" ], "properties": { "isPrimary": { @@ -584,12 +587,14 @@ }, "vmInstanceCount": { "type": "integer", + "format": "int32", "description": "The number of nodes in the node type. This count should match the capacity property in the corresponding VirtualMachineScaleSet resource.", "minimum": 1, "maximum": 2147483647 }, - "diskSizeInGB": { + "dataDiskSizeGB": { "type": "integer", + "format": "int32", "description": "Disk size for each vm in the node type in GBs." }, "placementProperties": { @@ -651,6 +656,11 @@ "items": { "$ref": "#/definitions/VMSSExtension" } + }, + "provisioningState": { + "$ref": "#/definitions/ManagedResourceProvisioningState", + "description": "The provisioning state of the managed cluster resource.", + "readOnly": true } }, "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." @@ -676,6 +686,7 @@ "properties": { "vmInstanceCount": { "type": "integer", + "format": "int32", "description": "The number of nodes in the node type. This count should match the capacity property in the corresponding VirtualMachineScaleSet resource.", "minimum": 1, "maximum": 2147483647 @@ -740,7 +751,7 @@ }, "description": "Node type update request" }, - "ProxyResource": { + "ManagedProxyResource": { "properties": { "id": { "type": "string", @@ -772,6 +783,22 @@ "description": "The resource model definition for proxy-only resource.", "x-ms-azure-resource": true }, + "ManagedResourceProvisioningState": { + "type": "string", + "description": "The provisioning state of the managed resource.", + "enum": [ + "None", + "Creating", + "Created", + "Updating", + "Succeeded", + "Failed", + "Canceled", + "Deleting", + "Deleted", + "Other" + ] + }, "SubResource": { "properties": { "id": { @@ -844,6 +871,10 @@ "typeHandlerVersion" ], "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." @@ -860,10 +891,6 @@ "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 if the extension will upgrade automatically." - }, "settings": { "type": "object", "description": "Json formatted public settings for the extension." @@ -876,6 +903,13 @@ "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." diff --git a/specification/servicefabric/resource-manager/readme.md b/specification/servicefabric/resource-manager/readme.md index 0e301cceb90e..49b1b2250bdd 100644 --- a/specification/servicefabric/resource-manager/readme.md +++ b/specification/servicefabric/resource-manager/readme.md @@ -68,6 +68,8 @@ These settings apply only when `--tag=package-2020-03` is specified on the comma input-file: - Microsoft.ServiceFabric/stable/2020-03-01/cluster.json - Microsoft.ServiceFabric/stable/2020-03-01/application.json +- Microsoft.ServiceFabric/preview/2020-01-01-preview/managedcluster.json +- Microsoft.ServiceFabric/preview/2020-01-01-preview/nodetype.json ``` ### Tag: package-2020-01-preview @@ -217,6 +219,8 @@ require: $(this-folder)/../../../profiles/readme.md input-file: - $(this-folder)/Microsoft.ServiceFabric/stable/2020-03-01/cluster.json - $(this-folder)/Microsoft.ServiceFabric/stable/2020-03-01/application.json + - $(this-folder)/Microsoft.ServiceFabric/preview/2020-01-01-preview/managedcluster.json + - $(this-folder)/Microsoft.ServiceFabric/preview/2020-01-01-preview/nodetype.json - $(this-folder)/Microsoft.ServiceFabric/preview/2019-11-01-preview/cluster.json - $(this-folder)/Microsoft.ServiceFabric/preview/2019-11-01-preview/application.json - $(this-folder)/Microsoft.ServiceFabric/preview/2019-06-01-preview/cluster.json @@ -229,8 +233,6 @@ input-file: - $(this-folder)/Microsoft.ServiceFabric/preview/2017-07-01-preview/application.json - $(this-folder)/Microsoft.ServiceFabric/preview/2017-07-01-preview/servicefabric.json - $(this-folder)/Microsoft.ServiceFabric/stable/2016-09-01/servicefabric.json - - $(this-folder)/Microsoft.ServiceFabric/preview/2020-01-01-preview/managedcluster.json - - $(this-folder)/Microsoft.ServiceFabric/preview/2020-01-01-preview/nodetype.json ``` diff --git a/specification/signalr/resource-manager/readme.md b/specification/signalr/resource-manager/readme.md index 2f52d708922d..bfcc6c5aae19 100644 --- a/specification/signalr/resource-manager/readme.md +++ b/specification/signalr/resource-manager/readme.md @@ -149,6 +149,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.SignalRService/preview/2020-07-01-preview/signalr.json - $(this-folder)/Microsoft.SignalRService/stable/2020-05-01/signalr.json - $(this-folder)/Microsoft.SignalRService/stable/2018-10-01/signalr.json - $(this-folder)/Microsoft.SignalRService/preview/2018-03-01-preview/signalr.json diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json index cdd9476a0624..5fd09941f7c8 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json @@ -90,6 +90,7 @@ { "name": "administratorName", "in": "path", + "description": "The name of server active directory administrator.", "required": true, "type": "string", "enum": [ @@ -103,7 +104,7 @@ { "name": "parameters", "in": "body", - "description": "The required parameters for creating or updating an Active Directory Administrator.", + "description": "The requested Azure Active Directory administrator Resource state.", "required": true, "schema": { "$ref": "#/definitions/ServerAzureADAdministrator" @@ -118,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 disableAzureADOnlyAuthentication 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 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" @@ -176,7 +177,7 @@ "description": "Successfully deleted the Azure Active Directory administrator." }, "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 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" @@ -234,49 +235,6 @@ } } } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/disableAzureADOnlyAuthentication": { - "post": { - "tags": [ - "ServerAzureADAdministrators" - ], - "description": "Disables Azure Active Directory only authentication on logical Server.", - "operationId": "ServerAzureADAdministrators_DisableAzureADOnlyAuthentication", - "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": "Successfully disabled Azure Active Directory only authentication on logical server.", - "schema": { - "$ref": "#/definitions/ServerAzureADAdministrator" - } - }, - "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." - }, - "202": { - "description": "Accepted" - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Disables Azure Active Directory only authentication on logical server.": { - "$ref": "./examples/DisableAzureADOnlyAuthUpdate.json" - } - } - } } }, "definitions": { @@ -316,7 +274,8 @@ }, "azureADOnlyAuthentication": { "description": "Azure Active Directory only Authentication enabled.", - "type": "boolean" + "type": "boolean", + "readOnly": true } } }, @@ -447,6 +406,30 @@ "required": true, "type": "string", "x-ms-parameter-location": "method" + }, + "WorkspaceNameParameter": { + "name": "workspaceName", + "in": "path", + "description": "The name of the workspace.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlPoolNameParameter": { + "name": "sqlPoolName", + "in": "path", + "description": "The name of the sql pool.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlDatabaseNameParameter": { + "name": "sqlDatabaseName", + "in": "path", + "description": "The name of the sql database.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" } }, "securityDefinitions": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorCreateOrUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorCreateOrUpdate.json index bf99bf84a0fa..8697a1c2f6f9 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorCreateOrUpdate.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorCreateOrUpdate.json @@ -11,8 +11,7 @@ "administratorType": "ActiveDirectory", "login": "bob@contoso.com", "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", - "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", - "azureADOnlyAuthentication": true + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" } } }, @@ -26,8 +25,7 @@ "administratorType": "ActiveDirectory", "login": "bob@contoso.com", "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", - "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", - "azureADOnlyAuthentication": true + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" } } }, @@ -40,8 +38,7 @@ "administratorType": "ActiveDirectory", "login": "bob@contoso.com", "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", - "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", - "azureADOnlyAuthentication": true + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorGet.json index 52aee36b3f44..ff2acb6324dc 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorGet.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorGet.json @@ -16,8 +16,7 @@ "administratorType": "ActiveDirectory", "login": "bob@contoso.com", "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", - "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", - "azureADOnlyAuthentication": true + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" } } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorList.json index 0fb15a505729..282785c9164a 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorList.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorList.json @@ -18,8 +18,7 @@ "administratorType": "ActiveDirectory", "login": "bob@contoso.com", "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", - "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", - "azureADOnlyAuthentication": true + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" } } ] diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/DisableAzureADOnlyAuthUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/DisableAzureADOnlyAuthUpdate.json deleted file mode 100644 index 91bf39fc96a1..000000000000 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/DisableAzureADOnlyAuthUpdate.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "sqlcrudtest-4799", - "serverName": "sqlcrudtest-6440", - "api-version": "2019-06-01-preview", - "parameters": {} - }, - "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": "d6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", - "azureADOnlyAuthentication": false - } - } - }, - "202": {} - } -} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/ServerAzureADOnlyAuthentications.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/ServerAzureADOnlyAuthentications.json new file mode 100644 index 000000000000..ad025ce40cd6 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/ServerAzureADOnlyAuthentications.json @@ -0,0 +1,418 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-02-02-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/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$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 + } + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified Azure Active Directory only authentication properties.", + "schema": { + "$ref": "#/definitions/ServerAzureADOnlyAuthentication" + } + }, + "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 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/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$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" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated a Azure Active Directory only authentication property.", + "schema": { + "$ref": "#/definitions/ServerAzureADOnlyAuthentication" + } + }, + "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." + }, + "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/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$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 + } + } + ], + "responses": { + "200": { + "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." + }, + "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/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "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" + } + } + }, + "Resource": { + "description": "ARM resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ProxyResource": { + "description": "ARM proxy resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "ServerAzureADOnlyAuthentication": { + "description": "Azure Active Directory only authentication.", + "type": "object", + "allOf": [ + { + "$ref": "#/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" + }, + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "BlobAuditingPolicyNameParameter": { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineInstanceNameParameter": { + "name": "sqlVirtualMachineInstanceName", + "in": "path", + "description": "The name of the SqlVirtualMachineInstance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineContainerNameParameter": { + "name": "sqlVirtualMachineContainerName", + "in": "path", + "description": "The name of the SqlVirtualMachineContainer.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VirtualClusterNameParameter": { + "name": "virtualClusterName", + "in": "path", + "description": "The name of the virtual cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "WorkspaceNameParameter": { + "name": "workspaceName", + "in": "path", + "description": "The name of the workspace.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlPoolNameParameter": { + "name": "sqlPoolName", + "in": "path", + "description": "The name of the sql pool.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlDatabaseNameParameter": { + "name": "sqlDatabaseName", + "in": "path", + "description": "The name of the sql 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/2020-02-02-preview/examples/AzureADOnlyAuthCreateOrUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/examples/AzureADOnlyAuthCreateOrUpdate.json new file mode 100644 index 000000000000..9a22a93dc4cd --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-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": "2020-02-02-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/2020-02-02-preview/examples/AzureADOnlyAuthDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/examples/AzureADOnlyAuthDelete.json new file mode 100644 index 000000000000..88b5bf5a4fef --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-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": "2020-02-02-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/examples/AzureADOnlyAuthGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/examples/AzureADOnlyAuthGet.json new file mode 100644 index 000000000000..1500749144cc --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-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": "2020-02-02-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/2020-02-02-preview/examples/AzureADOnlyAuthList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-preview/examples/AzureADOnlyAuthList.json new file mode 100644 index 000000000000..21395a5084fa --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2020-02-02-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": "2020-02-02-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/readme.md b/specification/sql/resource-manager/readme.md index bb93264ff82f..52f33c520137 100644 --- a/specification/sql/resource-manager/readme.md +++ b/specification/sql/resource-manager/readme.md @@ -135,12 +135,13 @@ input-file: - Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceLongTermRetentionPolicies.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/ServerAzureADAdministrators.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 - Microsoft.Sql/preview/2020-02-02-preview/managedDatabases.json +- Microsoft.Sql/preview/2020-02-02-preview/ServerAzureADOnlyAuthentications.json # Needed when there is more than one input file override-info: @@ -243,6 +244,7 @@ input-file: - Microsoft.Sql/preview/2019-06-01-preview/syncMembers.json - Microsoft.Sql/preview/2019-06-01-preview/FailoverManagedInstance.json - Microsoft.Sql/preview/2020-02-02-preview/managedDatabases.json +- Microsoft.Sql/preview/2020-02-02-preview/ServerAzureADOnlyAuthentications.json # Needed when there is more than one input file override-info: @@ -334,6 +336,7 @@ input-file: - Microsoft.Sql/preview/2019-06-01-preview/syncMembers.json - Microsoft.Sql/preview/2019-06-01-preview/FailoverManagedInstance.json - Microsoft.Sql/preview/2020-02-02-preview/managedDatabases.json +- Microsoft.Sql/preview/2020-02-02-preview/ServerAzureADOnlyAuthentications.json # Needed when there is more than one input file override-info: @@ -495,6 +498,7 @@ input-file: - ./Microsoft.Sql/preview/2020-02-02-preview/ServerSecurityAlertPolicies.json - ./Microsoft.Sql/preview/2020-02-02-preview/operations.json - ./Microsoft.Sql/preview/2020-02-02-preview/managedDatabases.json +- Microsoft.Sql/preview/2020-02-02-preview/ServerAzureADOnlyAuthentications.json # Needed when there is more than one input file override-info: @@ -892,12 +896,13 @@ input-file: - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceLongTermRetentionPolicies.json - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/WorkloadGroups.json - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/WorkloadClassifiers.json - - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/managedDatabases.json - - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/managedInstanceOperations.json + - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/syncGroups.json - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/syncMembers.json + - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/FailoverManagedInstance.json - $(this-folder)/Microsoft.Sql/preview/2020-02-02-preview/managedDatabases.json + - $(this-folder)/Microsoft.Sql/preview/2020-02-02-preview/ServerAzureADOnlyAuthentications.json - $(this-folder)/Microsoft.Sql/stable/2014-04-01/capabilities.json - $(this-folder)/Microsoft.Sql/stable/2014-04-01/databases.json - $(this-folder)/Microsoft.Sql/stable/2014-04-01/elasticPools.json @@ -915,6 +920,10 @@ input-file: - $(this-folder)/Microsoft.Sql/stable/2014-04-01/restorePoints.json - $(this-folder)/Microsoft.Sql/stable/2015-05-01/capabilities.json - $(this-folder)/Microsoft.Sql/preview/2015-05-01-preview/blobAuditing.json + - $(this-folder)/./Microsoft.Sql/preview/2020-02-02-preview/DatabaseSecurityAlertPolicies.json + - $(this-folder)/./Microsoft.Sql/preview/2020-02-02-preview/ManagedServerSecurityAlertPolicies.json + - $(this-folder)/./Microsoft.Sql/preview/2020-02-02-preview/ServerSecurityAlertPolicies.json + - $(this-folder)/./Microsoft.Sql/preview/2020-02-02-preview/operations.json - $(this-folder)/./Microsoft.Sql/preview/2020-02-02-preview/managedDatabases.json - $(this-folder)/./Microsoft.Sql/preview/2019-06-01-preview/databases.json - $(this-folder)/./Microsoft.Sql/preview/2019-06-01-preview/managedDatabases.json @@ -926,6 +935,7 @@ input-file: - $(this-folder)/./Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json - $(this-folder)/./Microsoft.Sql/preview/2019-06-01-preview/syncGroups.json - $(this-folder)/./Microsoft.Sql/preview/2019-06-01-preview/syncMembers.json + - $(this-folder)/./Microsoft.Sql/preview/2019-06-01-preview/FailoverManagedInstance.json - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/DatabaseSecurityAlertPolicies.json - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/managedDatabaseSensitivityLabels.json - $(this-folder)/./Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceVulnerabilityAssessments.json diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/CreateExportJob.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/CreateExportJob.json new file mode 100644 index 000000000000..45993841892d --- /dev/null +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/CreateExportJob.json @@ -0,0 +1,156 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "jobName": "myExportJob", + "body": { + "location": "West US", + "properties": { + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", + "jobType": "Export", + "returnAddress": { + "recipientName": "Test", + "streetAddress1": "Street1", + "streetAddress2": "street2", + "city": "Redmond", + "stateOrProvince": "wa", + "postalCode": "98007", + "countryOrRegion": "USA", + "phone": "4250000000", + "email": "Test@contoso.com" + }, + "returnShipping": { + "carrierName": "FedEx", + "carrierAccountNumber": "989ffff" + }, + "diagnosticsPath": "waimportexport", + "logLevel": "Verbose", + "backupDriveManifest": true, + "export": { + "blobList": { + "blobPathPrefix": [ + "/" + ] + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", + "jobType": "Export", + "returnAddress": { + "recipientName": "Test", + "streetAddress1": "Street1", + "streetAddress2": "street2", + "city": "Redmond", + "stateOrProvince": "wa", + "postalCode": "98007", + "countryOrRegion": "USA", + "phone": "4250000000", + "email": "Test@contoso.com" + }, + "returnShipping": { + "carrierName": "FedEx", + "carrierAccountNumber": "989ffff" + }, + "shippingInformation": { + "recipientName": "Microsoft Azure Import/Export Service", + "streetAddress1": "2045 Lafayette Street", + "streetAddress2": "", + "city": "Santa Clara", + "stateOrProvince": "CA", + "postalCode": "95050", + "countryOrRegion": "USA", + "phone": "408 0000 0000", + "additionalInformation": "" + }, + "diagnosticsPath": "waimportexport", + "logLevel": "Verbose", + "backupDriveManifest": true, + "cancelRequested": false, + "state": "Creating", + "export": { + "blobList": { + "blobPathPrefix": [ + "/" + ] + } + }, + "provisioningState": "Succeeded", + "encryptionKey": { + "kekType": "MicrosoftManaged" + } + }, + "identity": { + "type": "None" + }, + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/myExportJob", + "name": "myExportJob", + "type": "Microsoft.ImportExport/jobs", + "location": "West US" + } + }, + "201": { + "body": { + "properties": { + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", + "jobType": "Export", + "returnAddress": { + "recipientName": "Test", + "streetAddress1": "Street1", + "streetAddress2": "street2", + "city": "Redmond", + "stateOrProvince": "wa", + "postalCode": "98007", + "countryOrRegion": "USA", + "phone": "4250000000", + "email": "Test@contoso.com" + }, + "returnShipping": { + "carrierName": "FedEx", + "carrierAccountNumber": "989ffff" + }, + "shippingInformation": { + "recipientName": "Microsoft Azure Import/Export Service", + "streetAddress1": "2045 Lafayette Street", + "streetAddress2": "", + "city": "Santa Clara", + "stateOrProvince": "CA", + "postalCode": "95050", + "countryOrRegion": "USA", + "phone": "408 0000 0000", + "additionalInformation": "" + }, + "diagnosticsPath": "waimportexport", + "logLevel": "Verbose", + "backupDriveManifest": true, + "cancelRequested": false, + "state": "Creating", + "export": { + "blobList": { + "blobPathPrefix": [ + "/" + ] + } + }, + "provisioningState": "Succeeded", + "encryptionKey": { + "kekType": "MicrosoftManaged" + } + }, + "identity": { + "type": "None" + }, + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/myExportJob", + "name": "myExportJob", + "type": "Microsoft.ImportExport/jobs", + "location": "West US" + } + } + } +} diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/CreateJob.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/CreateJob.json new file mode 100644 index 000000000000..51c70223bd5b --- /dev/null +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/CreateJob.json @@ -0,0 +1,162 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "jobName": "myJob", + "body": { + "location": "West US", + "properties": { + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", + "jobType": "Import", + "returnAddress": { + "recipientName": "Test", + "streetAddress1": "Street1", + "streetAddress2": "street2", + "city": "Redmond", + "stateOrProvince": "wa", + "postalCode": "98007", + "countryOrRegion": "USA", + "phone": "4250000000", + "email": "Test@contoso.com" + }, + "returnShipping": { + "carrierName": "FedEx", + "carrierAccountNumber": "989ffff" + }, + "diagnosticsPath": "waimportexport", + "logLevel": "Verbose", + "backupDriveManifest": true, + "driveList": [ + { + "driveId": "9CA995BB", + "bitLockerKey": "238810-662376-448998-450120-652806-203390-606320-483076", + "manifestFile": "\\8a0c23f7-14b7-470a-9633-fcd46590a1bc.manifest", + "manifestHash": "4228EC5D8E048CB9B515338C789314BE8D0B2FDBC7C7A0308E1C826242CDE74E", + "driveHeaderHash": "0:1048576:FB6B6ED500D49DA6E0D723C98D42C657F2881CC13357C28DCECA6A524F1292501571A321238540E621AB5BD9C9A32637615919A75593E6CB5C1515DAE341CABF;135266304:143360:C957A189AFC38C4E80731252301EB91427CE55E61448FA3C73C6FDDE70ABBC197947EC8D0249A2C639BB10B95957D5820A4BE8DFBBF76FFFA688AE5CE0D42EC3" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", + "jobType": "Import", + "returnAddress": { + "recipientName": "Test", + "streetAddress1": "Street1", + "streetAddress2": "street2", + "city": "Redmond", + "stateOrProvince": "wa", + "postalCode": "98007", + "countryOrRegion": "USA", + "phone": "4250000000", + "email": "Test@contoso.com" + }, + "returnShipping": { + "carrierName": "FedEx", + "carrierAccountNumber": "989ffff" + }, + "shippingInformation": { + "recipientName": "Microsoft Azure Import/Export Service", + "streetAddress1": "2045 Lafayette Street", + "streetAddress2": "", + "city": "Santa Clara", + "stateOrProvince": "CA", + "postalCode": "95050", + "countryOrRegion": "USA", + "phone": "408 0000 0000", + "additionalInformation": "" + }, + "diagnosticsPath": "waimportexport", + "logLevel": "Verbose", + "backupDriveManifest": true, + "cancelRequested": false, + "state": "Creating", + "driveList": [ + { + "driveId": "9CA995BB", + "manifestFile": "\\8a0c23f7-14b7-470a-9633-fcd46590a1bc.manifest", + "manifestHash": "4228EC5D8E048CB9B515338C789314BE8D0B2FDBC7C7A0308E1C826242CDE74E", + "driveHeaderHash": "0:1048576:FB6B6ED500D49DA6E0D723C98D42C657F2881CC13357C28DCECA6A524F1292501571A321238540E621AB5BD9C9A32637615919A75593E6CB5C1515DAE341CABF;135266304:143360:C957A189AFC38C4E80731252301EB91427CE55E61448FA3C73C6FDDE70ABBC197947EC8D0249A2C639BB10B95957D5820A4BE8DFBBF76FFFA688AE5CE0D42EC3", + "state": "Specified" + } + ], + "provisioningState": "Succeeded", + "encryptionKey": { + "kekType": "MicrosoftManaged" + } + }, + "identity": { + "type": "None" + }, + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/myJob", + "name": "myJob", + "type": "Microsoft.ImportExport/jobs", + "location": "West US" + } + }, + "201": { + "body": { + "properties": { + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", + "jobType": "Import", + "returnAddress": { + "recipientName": "Test", + "streetAddress1": "Street1", + "streetAddress2": "street2", + "city": "Redmond", + "stateOrProvince": "wa", + "postalCode": "98007", + "countryOrRegion": "USA", + "phone": "4250000000", + "email": "Test@contoso.com" + }, + "returnShipping": { + "carrierName": "FedEx", + "carrierAccountNumber": "989ffff" + }, + "shippingInformation": { + "recipientName": "Microsoft Azure Import/Export Service", + "streetAddress1": "2045 Lafayette Street", + "streetAddress2": "", + "city": "Santa Clara", + "stateOrProvince": "CA", + "postalCode": "95050", + "countryOrRegion": "USA", + "phone": "408 0000 0000", + "additionalInformation": "" + }, + "diagnosticsPath": "waimportexport", + "logLevel": "Verbose", + "backupDriveManifest": true, + "cancelRequested": false, + "state": "Creating", + "driveList": [ + { + "driveId": "9CA995BB", + "manifestFile": "\\8a0c23f7-14b7-470a-9633-fcd46590a1bc.manifest", + "manifestHash": "4228EC5D8E048CB9B515338C789314BE8D0B2FDBC7C7A0308E1C826242CDE74E", + "driveHeaderHash": "0:1048576:FB6B6ED500D49DA6E0D723C98D42C657F2881CC13357C28DCECA6A524F1292501571A321238540E621AB5BD9C9A32637615919A75593E6CB5C1515DAE341CABF;135266304:143360:C957A189AFC38C4E80731252301EB91427CE55E61448FA3C73C6FDDE70ABBC197947EC8D0249A2C639BB10B95957D5820A4BE8DFBBF76FFFA688AE5CE0D42EC3", + "state": "Specified" + } + ], + "provisioningState": "Succeeded", + "encryptionKey": { + "kekType": "MicrosoftManaged" + } + }, + "identity": { + "type": "None" + }, + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/myJob", + "name": "myJob", + "type": "Microsoft.ImportExport/jobs", + "location": "West US" + } + } + } +} diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/DeleteJob.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/DeleteJob.json new file mode 100644 index 000000000000..d69a85e6b1f6 --- /dev/null +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/DeleteJob.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "jobName": "myJob" + }, + "responses": { + "200": {} + } +} diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/GetExportJob.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/GetExportJob.json new file mode 100644 index 000000000000..5325f74af9c1 --- /dev/null +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/GetExportJob.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "jobName": "myJob" + }, + "responses": { + "200": { + "body": { + "properties": { + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", + "jobType": "Export", + "returnAddress": { + "recipientName": "Test", + "streetAddress1": "Street1", + "streetAddress2": "street2", + "city": "Redmond", + "stateOrProvince": "wa", + "postalCode": "98007", + "countryOrRegion": "USA", + "phone": "4250000000", + "email": "Test@contoso.com" + }, + "returnShipping": { + "carrierName": "FedEx", + "carrierAccountNumber": "989ffff" + }, + "shippingInformation": { + "recipientName": "Microsoft Azure Import/Export Service", + "streetAddress1": "2045 Lafayette Street", + "streetAddress2": "", + "city": "Santa Clara", + "stateOrProvince": "CA", + "postalCode": "95050", + "countryOrRegion": "USA", + "phone": "408 0000 0000", + "additionalInformation": "" + }, + "diagnosticsPath": "waimportexport", + "logLevel": "Verbose", + "backupDriveManifest": true, + "cancelRequested": false, + "state": "Creating", + "driveList": [], + "export": { + "blobList": { + "blobPathPrefix": [ + "/" + ] + } + }, + "provisioningState": "Succeeded", + "encryptionKey": { + "kekType": "MicrosoftManaged" + } + }, + "identity": { + "type": "None" + }, + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/test", + "name": "myJob", + "type": "Microsoft.ImportExport/jobs", + "location": "West US" + } + } + } +} diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/GetJob.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/GetJob.json new file mode 100644 index 000000000000..3cce5366748c --- /dev/null +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/GetJob.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "jobName": "myJob" + }, + "responses": { + "200": { + "body": { + "properties": { + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", + "jobType": "Import", + "returnAddress": { + "recipientName": "Test", + "streetAddress1": "Street1", + "streetAddress2": "street2", + "city": "Redmond", + "stateOrProvince": "wa", + "postalCode": "98007", + "countryOrRegion": "USA", + "phone": "4250000000", + "email": "Test@contoso.com" + }, + "returnShipping": { + "carrierName": "FedEx", + "carrierAccountNumber": "989ffff" + }, + "shippingInformation": { + "recipientName": "Microsoft Azure Import/Export Service", + "streetAddress1": "2045 Lafayette Street", + "streetAddress2": "", + "city": "Santa Clara", + "stateOrProvince": "CA", + "postalCode": "95050", + "countryOrRegion": "USA", + "phone": "408 0000 0000", + "additionalInformation": "" + }, + "diagnosticsPath": "waimportexport", + "logLevel": "Verbose", + "backupDriveManifest": true, + "cancelRequested": false, + "state": "Creating", + "driveList": [ + { + "driveId": "9CA995BB", + "manifestFile": "\\DriveManifest.xml", + "manifestHash": "109B21108597EF36D5785F08303F3638", + "driveHeaderHash": "", + "state": "Specified" + } + ], + "provisioningState": "Succeeded", + "encryptionKey": { + "kekType": "MicrosoftManaged" + } + }, + "identity": { + "type": "None" + }, + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/test", + "name": "myJob", + "type": "Microsoft.ImportExport/jobs", + "location": "West US" + } + } + } +} diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/GetLocation.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/GetLocation.json new file mode 100644 index 000000000000..bc47468af2d1 --- /dev/null +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/GetLocation.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "locationName": "West US" + }, + "responses": { + "200": { + "body": { + "properties": { + "recipientName": "Microsoft Azure Import/Export Service", + "streetAddress1": "2045 Lafayette Street", + "streetAddress2": "", + "city": "Santa Clara", + "stateOrProvince": "CA", + "postalCode": "95050", + "countryOrRegion": "USA", + "phone": "408 352 7600", + "supportedCarriers": [ + "FedEx" + ], + "alternateLocations": [ + "/providers/Microsoft.ImportExport/locations/westus" + ] + }, + "id": "/providers/Microsoft.ImportExport/locations/westus", + "name": "West US", + "type": "Microsoft.ImportExport/locations" + } + } + } +} diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/ListBitLockerKeys.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/ListBitLockerKeys.json new file mode 100644 index 000000000000..3b3e8b3ff686 --- /dev/null +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/ListBitLockerKeys.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "jobName": "myJob" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "driveId": "9CA995BB", + "bitLockerKey": "000000-000000-111111-222222-333333-444444-555555-666666" + } + ] + } + } + } +} diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/ListJobsInResourceGroup.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/ListJobsInResourceGroup.json new file mode 100644 index 000000000000..ceb96820992a --- /dev/null +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/ListJobsInResourceGroup.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/xtprodtestwu", + "jobType": "Import", + "returnAddress": { + "recipientName": "La", + "streetAddress1": "Street1", + "streetAddress2": "street2", + "city": "Redmond", + "stateOrProvince": "wa", + "postalCode": "98007", + "countryOrRegion": "USA", + "phone": "4250000000", + "email": "test@contoso.com" + }, + "returnShipping": { + "carrierName": "FedEx", + "carrierAccountNumber": "989ffff" + }, + "shippingInformation": { + "recipientName": "Microsoft Azure Import/Export Service", + "streetAddress1": "2045 Lafayette Street", + "streetAddress2": "", + "city": "Santa Clara", + "stateOrProvince": "CA", + "postalCode": "95050", + "countryOrRegion": "USA", + "phone": "408 352 7600", + "additionalInformation": "" + }, + "deliveryPackage": { + "carrierName": "FedEx", + "trackingNumber": "787895108176", + "driveCount": 1, + "shipDate": "9/29/2017 10:28:35 PM" + }, + "diagnosticsPath": "waimportexport", + "logLevel": "Verbose", + "backupDriveManifest": true, + "cancelRequested": false, + "state": "Received", + "provisioningState": "Succeeded", + "encryptionKey": { + "kekType": "MicrosoftManaged" + } + }, + "identity": { + "type": "None" + }, + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/test-by1-ssd-2", + "name": "test-by1-ssd-2", + "type": "Microsoft.ImportExport/jobs", + "location": "West US" + } + ] + } + } + } +} diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/ListJobsInSubscription.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/ListJobsInSubscription.json new file mode 100644 index 000000000000..eacade5d32d9 --- /dev/null +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/ListJobsInSubscription.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/testrg/providers/Microsoft.Storage/storageAccounts/xtprodtestarmos2", + "jobType": "Import", + "returnAddress": { + "recipientName": "La", + "streetAddress1": "Street1", + "streetAddress2": "street2", + "city": "city", + "stateOrProvince": "wa", + "postalCode": "98007", + "countryOrRegion": "USA", + "phone": "425000000", + "email": "test@contoso.com" + }, + "returnShipping": { + "carrierName": "FedEx", + "carrierAccountNumber": "989ffff" + }, + "shippingInformation": { + "recipientName": "Windows Azure Import Export Service", + "streetAddress1": "Boydton 1 / BLDG # 1 101 Herbert Drive", + "streetAddress2": "", + "city": "Boydton", + "stateOrProvince": "VA", + "postalCode": "23917", + "countryOrRegion": "USA", + "phone": "+1-434-738-9443", + "additionalInformation": "" + }, + "deliveryPackage": { + "carrierName": "FedEx", + "trackingNumber": "992016102507", + "driveCount": 1, + "shipDate": "8/11/2017 9:05:00 PM" + }, + "diagnosticsPath": "waimportexport", + "logLevel": "Verbose", + "backupDriveManifest": true, + "cancelRequested": false, + "state": "Received", + "driveList": [ + { + "driveId": "7PHR882C", + "manifestFile": "\\DriveManifest.xml", + "manifestHash": "E5D632DB047C74B3B17C8F3359950ADB", + "state": "Received" + } + ], + "provisioningState": "Succeeded", + "encryptionKey": { + "kekType": "MicrosoftManaged" + } + }, + "identity": { + "type": "None" + }, + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/testrg/providers/Microsoft.ImportExport/jobs/test-bn1-import-cpu100-01", + "name": "test-bn1-import-cpu100-01", + "type": "Microsoft.ImportExport/jobs", + "location": "East US 2" + }, + { + "properties": { + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/testrg/providers/Microsoft.Storage/storageAccounts/xtprodtestarmos2", + "jobType": "Import", + "returnAddress": { + "recipientName": "La", + "streetAddress1": "Street1", + "streetAddress2": "street2", + "city": "city", + "stateOrProvince": "wa", + "postalCode": "98007", + "countryOrRegion": "USA", + "phone": "4256150991", + "email": "test@contoso.com" + }, + "shippingInformation": { + "recipientName": "Windows Azure Import Export Service", + "streetAddress1": "Boydton 1 / BLDG # 1 101 Herbert Drive", + "streetAddress2": "", + "city": "Boydton", + "stateOrProvince": "VA", + "postalCode": "23917", + "countryOrRegion": "USA", + "phone": "+1-434-738-9443", + "additionalInformation": "" + }, + "deliveryPackage": { + "carrierName": "FedEx", + "trackingNumber": "992016102508", + "driveCount": 1, + "shipDate": "8/13/2017 7:32:23 PM" + }, + "diagnosticsPath": "waimportexport", + "logLevel": "Verbose", + "backupDriveManifest": true, + "cancelRequested": false, + "state": "Transferring", + "percentComplete": 6, + "driveList": [ + { + "driveId": "KV6H86XP", + "manifestFile": "\\DriveManifest.xml", + "manifestHash": "F6A488A65AF0CCA7D050B7F9F43A197C", + "state": "CompletedMoreInfo", + "copyStatus": "InProgress", + "verboseLogUri": "https://foo.blob.core.windows.net/waimportexport/waies/test-bn1-import-cpu100-02_KV6H86XP_20170813-194618-350_verbose.xml", + "errorLogUri": "https://foo.blob.core.windows.net/waimportexport/waies/test-bn1-import-cpu100-02_KV6H86XP_20170813-194620-021_error.xml", + "manifestUri": "https://foo.blob.core.windows.net/waimportexport/waies/test-bn1-import-cpu100-02_KV6H86XP_20170813-194620-574_manifest.xml" + } + ], + "provisioningState": "Succeeded", + "encryptionKey": { + "kekType": "MicrosoftManaged" + } + }, + "identity": { + "type": "None" + }, + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/testrg/providers/Microsoft.ImportExport/jobs/test-bn1-import-cpu100-02", + "name": "test-bn1-import-cpu100-02", + "type": "Microsoft.ImportExport/jobs", + "location": "East US 2" + } + ] + } + } + } +} diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/ListLocations.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/ListLocations.json new file mode 100644 index 000000000000..ac29583c03b1 --- /dev/null +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/ListLocations.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2020-08-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "recipientName": "Windows Azure Import/Export Service", + "streetAddress1": "Customer-A c/o NEXTDC Ltd, Delivery code ABCDEFG, 4 Eden Park Drive", + "streetAddress2": "", + "city": "Macquarie Park", + "stateOrProvince": "NSW", + "postalCode": "2113", + "countryOrRegion": "Australia", + "phone": "612 0000 0000", + "supportedCarriers": [ + "DHL" + ], + "alternateLocations": [ + "/providers/Microsoft.ImportExport/locations/australiaeast" + ] + }, + "id": "/providers/Microsoft.ImportExport/locations/australiaeast", + "name": "Australia East", + "type": "Microsoft.ImportExport/locations" + }, + { + "properties": { + "recipientName": "Microsoft Azure Import/Export Service", + "streetAddress1": "Microsoft, c/o NEXTDC Ltd, Delivery code ABCDEFG, 826-830 Lorimer St, Port", + "streetAddress2": "", + "city": "Melbourne", + "stateOrProvince": "Melbourne", + "postalCode": "3207", + "countryOrRegion": "Australia", + "phone": "61 0 0000 0000", + "supportedCarriers": [ + "DHL" + ], + "alternateLocations": [ + "/providers/Microsoft.ImportExport/locations/australiasoutheast" + ] + }, + "id": "/providers/Microsoft.ImportExport/locations/australiasoutheast", + "name": "Australia Southeast", + "type": "Microsoft.ImportExport/locations" + } + ] + } + } + } +} diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/ListOperations.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/ListOperations.json new file mode 100644 index 000000000000..002904d9a2f6 --- /dev/null +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/ListOperations.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2020-08-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.ImportExport/locations/read", + "display": { + "provider": "Microsoft Import/Export", + "resource": "Locations", + "operation": "Get or List Locations", + "description": "Gets the properties for the specified location or returns the list of locations." + } + }, + { + "name": "Microsoft.ImportExport/jobs/write", + "display": { + "provider": "Microsoft Import/Export", + "resource": "Jobs", + "operation": "Create or Update Job", + "description": "Creates a job with the specified parameters or update the properties or tags for the specified job." + } + }, + { + "name": "Microsoft.ImportExport/jobs/read", + "display": { + "provider": "Microsoft Import/Export", + "resource": "Jobs", + "operation": "Get or List Jobs", + "description": "Gets the properties for the specified job or returns the list of jobs." + } + }, + { + "name": "Microsoft.ImportExport/jobs/listBitLockerKeys/action", + "display": { + "provider": "Microsoft Import/Export", + "resource": "Jobs", + "operation": "List BitLocker Keys", + "description": "Gets the BitLocker keys for the specified job." + } + }, + { + "name": "Microsoft.ImportExport/jobs/delete", + "display": { + "provider": "Microsoft Import/Export", + "resource": "Jobs", + "operation": "Delete Job", + "description": "Deletes an existing job." + } + }, + { + "name": "Microsoft.ImportExport/register/action", + "display": { + "provider": "Microsoft Import/Export", + "resource": "Import/Export Resource Provider", + "operation": "Registers the Import/Export Resource Provider", + "description": "Registers the subscription for the import/export resource provider and enables the creation of import/export jobs." + } + } + ] + } + } + } +} diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/UpdateExportJob.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/UpdateExportJob.json new file mode 100644 index 000000000000..54cddee5bc00 --- /dev/null +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/UpdateExportJob.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "jobName": "myExportJob", + "body": { + "properties": { + "state": "", + "logLevel": "Verbose", + "backupDriveManifest": true + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", + "jobType": "Export", + "returnAddress": { + "recipientName": "Test", + "streetAddress1": "Street1", + "streetAddress2": "street2", + "city": "Redmond", + "stateOrProvince": "wa", + "postalCode": "98007", + "countryOrRegion": "USA", + "phone": "4250000000", + "email": "Test@contoso.com" + }, + "returnShipping": { + "carrierName": "FedEx", + "carrierAccountNumber": "989ffff" + }, + "shippingInformation": { + "recipientName": "Microsoft Azure Import/Export Service", + "streetAddress1": "2045 Lafayette Street", + "streetAddress2": "", + "city": "Santa Clara", + "stateOrProvince": "CA", + "postalCode": "95050", + "countryOrRegion": "USA", + "phone": "408 352 7600", + "additionalInformation": "" + }, + "diagnosticsPath": "waimportexport", + "logLevel": "Verbose", + "backupDriveManifest": true, + "cancelRequested": false, + "state": "Creating", + "export": { + "blobList": { + "blobPathPrefix": [ + "/" + ] + } + }, + "provisioningState": "Succeeded", + "encryptionKey": { + "kekType": "MicrosoftManaged" + } + }, + "identity": { + "type": "None" + }, + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/myExportJob", + "name": "myExportJob", + "type": "Microsoft.ImportExport/jobs", + "location": "West US" + } + } + } +} diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/UpdateJob.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/UpdateJob.json new file mode 100644 index 000000000000..df0e42281026 --- /dev/null +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/examples/UpdateJob.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2020-08-01", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "jobName": "myJob", + "body": { + "properties": { + "state": "", + "logLevel": "Verbose", + "backupDriveManifest": true + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", + "jobType": "Import", + "returnAddress": { + "recipientName": "Test", + "streetAddress1": "Street1", + "streetAddress2": "street2", + "city": "Redmond", + "stateOrProvince": "wa", + "postalCode": "98007", + "countryOrRegion": "USA", + "phone": "4250000000", + "email": "Test@contoso.com" + }, + "returnShipping": { + "carrierName": "FedEx", + "carrierAccountNumber": "989ffff" + }, + "shippingInformation": { + "recipientName": "Microsoft Azure Import/Export Service", + "streetAddress1": "2045 Lafayette Street", + "streetAddress2": "", + "city": "Santa Clara", + "stateOrProvince": "CA", + "postalCode": "95050", + "countryOrRegion": "USA", + "phone": "408 352 7600", + "additionalInformation": "" + }, + "diagnosticsPath": "waimportexport", + "logLevel": "Verbose", + "backupDriveManifest": true, + "cancelRequested": false, + "state": "Creating", + "driveList": [ + { + "driveId": "9CA995BB", + "manifestFile": "\\8a0c23f7-14b7-470a-9633-fcd46590a1bc.manifest", + "manifestHash": "4228EC5D8E048CB9B515338C789314BE8D0B2FDBC7C7A0308E1C826242CDE74E", + "driveHeaderHash": "0:1048576:FB6B6ED500D49DA6E0D723C98D42C657F2881CC13357C28DCECA6A524F1292501571A321238540E621AB5BD9C9A32637615919A75593E6CB5C1515DAE341CABF;135266304:143360:C957A189AFC38C4E80731252301EB91427CE55E61448FA3C73C6FDDE70ABBC197947EC8D0249A2C639BB10B95957D5820A4BE8DFBBF76FFFA688AE5CE0D42EC3", + "state": "Specified" + } + ], + "provisioningState": "Succeeded", + "encryptionKey": { + "kekType": "MicrosoftManaged" + } + }, + "identity": { + "type": "None" + }, + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/myJob", + "name": "myJob", + "type": "Microsoft.ImportExport/jobs", + "location": "West US" + } + } + } +} diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/storageimportexport.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/storageimportexport.json new file mode 100644 index 000000000000..1fec719ac62a --- /dev/null +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2020-08-01/storageimportexport.json @@ -0,0 +1,1313 @@ +{ + "swagger": "2.0", + "info": { + "title": "StorageImportExport", + "description": "The Storage Import/Export Resource Provider API.", + "version": "2020-08-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.ImportExport/locations": { + "get": { + "tags": [ + "StorageImportExport" + ], + "operationId": "Locations_List", + "description": "Returns a list of locations to which you can ship the disks associated with an import or export job. A location is a Microsoft data center region.", + "x-ms-examples": { + "List locations": { + "$ref": "examples/ListLocations.json" + } + }, + "externalDocs": { + "url": "" + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/Accept-Language" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LocationsResponse" + } + }, + "default": { + "description": "An error occurs.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/providers/Microsoft.ImportExport/locations/{locationName}": { + "get": { + "tags": [ + "StorageImportExport" + ], + "operationId": "Locations_Get", + "description": "Returns the details about a location to which you can ship the disks associated with an import or export job. A location is an Azure region.", + "x-ms-examples": { + "Get locations": { + "$ref": "examples/GetLocation.json" + } + }, + "externalDocs": { + "url": "" + }, + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The name of the location. For example, West US or westus.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/Accept-Language" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Location" + } + }, + "default": { + "description": "An error occurs.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ImportExport/jobs": { + "get": { + "tags": [ + "StorageImportExport" + ], + "operationId": "Jobs_ListBySubscription", + "description": "Returns all active and completed jobs in a subscription.", + "x-ms-examples": { + "List jobs in a subscription": { + "$ref": "examples/ListJobsInSubscription.json" + } + }, + "externalDocs": { + "url": "" + }, + "parameters": [ + { + "name": "$top", + "in": "query", + "description": "An integer value that specifies how many jobs at most should be returned. The value cannot exceed 100.", + "required": false, + "type": "integer" + }, + { + "name": "$filter", + "in": "query", + "description": "Can be used to restrict the results to certain conditions.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/Accept-Language" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListJobsResponse" + } + }, + "default": { + "description": "An error occurs.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ImportExport/jobs": { + "get": { + "tags": [ + "StorageImportExport" + ], + "operationId": "Jobs_ListByResourceGroup", + "description": "Returns all active and completed jobs in a resource group.", + "x-ms-examples": { + "List jobs in a resource group": { + "$ref": "examples/ListJobsInResourceGroup.json" + } + }, + "externalDocs": { + "url": "" + }, + "parameters": [ + { + "name": "$top", + "in": "query", + "description": "An integer value that specifies how many jobs at most should be returned. The value cannot exceed 100.", + "required": false, + "type": "integer" + }, + { + "name": "$filter", + "in": "query", + "description": "Can be used to restrict the results to certain conditions.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/Accept-Language" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListJobsResponse" + } + }, + "default": { + "description": "An error occurs.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ImportExport/jobs/{jobName}": { + "get": { + "tags": [ + "StorageImportExport" + ], + "operationId": "Jobs_Get", + "description": "Gets information about an existing job.", + "x-ms-examples": { + "Get import job": { + "$ref": "examples/GetJob.json" + }, + "Get export job": { + "$ref": "examples/GetExportJob.json" + } + }, + "externalDocs": { + "url": "" + }, + "parameters": [ + { + "name": "jobName", + "in": "path", + "description": "The name of the import/export job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/Accept-Language" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "An error occurs.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "StorageImportExport" + ], + "operationId": "Jobs_Update", + "description": "Updates specific properties of a job. You can call this operation to notify the Import/Export service that the hard drives comprising the import or export job have been shipped to the Microsoft data center. It can also be used to cancel an existing job.", + "x-ms-examples": { + "Update import job": { + "$ref": "examples/UpdateJob.json" + }, + "Update export job": { + "$ref": "examples/UpdateExportJob.json" + } + }, + "externalDocs": { + "url": "" + }, + "parameters": [ + { + "name": "jobName", + "in": "path", + "description": "The name of the import/export job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/Accept-Language" + }, + { + "name": "body", + "in": "body", + "required": true, + "description": "The parameters to update in the job", + "schema": { + "$ref": "#/definitions/UpdateJobParameters" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "An error occurs.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "StorageImportExport" + ], + "operationId": "Jobs_Create", + "description": "Creates a new job or updates an existing job in the specified subscription.", + "x-ms-examples": { + "Create import job": { + "$ref": "examples/CreateJob.json" + }, + "Create export job": { + "$ref": "examples/CreateExportJob.json" + } + }, + "externalDocs": { + "url": "" + }, + "parameters": [ + { + "name": "jobName", + "in": "path", + "description": "The name of the import/export job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/Accept-Language" + }, + { + "$ref": "#/parameters/x-ms-client-tenant-id" + }, + { + "name": "body", + "in": "body", + "description": "The parameters used for creating the job", + "required": true, + "schema": { + "$ref": "#/definitions/PutJobParameters" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "An error occurs.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "StorageImportExport" + ], + "operationId": "Jobs_Delete", + "description": "Deletes an existing job. Only jobs in the Creating or Completed states can be deleted.", + "x-ms-examples": { + "Delete job": { + "$ref": "examples/DeleteJob.json" + } + }, + "externalDocs": { + "url": "" + }, + "parameters": [ + { + "name": "jobName", + "in": "path", + "description": "The name of the import/export job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/Accept-Language" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "An error occurs.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ImportExport/jobs/{jobName}/listBitLockerKeys": { + "post": { + "tags": [ + "StorageImportExport" + ], + "operationId": "BitLockerKeys_List", + "description": "Returns the BitLocker Keys for all drives in the specified job.", + "x-ms-examples": { + "List BitLocker Keys for drives in a job": { + "$ref": "examples/ListBitLockerKeys.json" + } + }, + "externalDocs": { + "url": "" + }, + "parameters": [ + { + "name": "jobName", + "in": "path", + "description": "The name of the import/export job.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/Accept-Language" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GetBitLockerKeysResponse" + } + }, + "default": { + "description": "An error occurs.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/providers/Microsoft.ImportExport/operations": { + "get": { + "tags": [ + "StorageImportExport" + ], + "operationId": "Operations_List", + "description": "Returns the list of operations supported by the import/export resource provider.", + "x-ms-examples": { + "List available operations": { + "$ref": "examples/ListOperations.json" + } + }, + "externalDocs": { + "url": "" + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/Accept-Language" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListOperationsResponse" + } + }, + "default": { + "description": "An error occurs.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "Response when errors occurred", + "properties": { + "error": { + "x-ms-client-flatten": true, + "description": "Describes the error information.", + "properties": { + "code": { + "type": "string", + "description": "Provides information about the error code." + }, + "message": { + "type": "string", + "description": "Provides information about the error message." + }, + "target": { + "type": "string", + "description": "Provides information about the error target." + }, + "details": { + "type": "array", + "description": "Describes the error details if present.", + "items": { + "properties": { + "code": { + "type": "string", + "description": "Provides information about the error code." + }, + "target": { + "type": "string", + "description": "Provides information about the error target." + }, + "message": { + "type": "string", + "description": "Provides information about the error message." + } + } + } + }, + "innererror": { + "type": "object", + "description": "Inner error object if present." + } + } + } + } + }, + "PutJobParameters": { + "description": "Put Job parameters", + "properties": { + "location": { + "type": "string", + "description": "Specifies the supported Azure location where the job should be created" + }, + "tags": { + "type": "object", + "description": "Specifies the tags that will be assigned to the job." + }, + "properties": { + "$ref": "#/definitions/JobDetails", + "description": "Specifies the job properties" + } + } + }, + "JobDetails": { + "description": "Specifies the job properties", + "properties": { + "storageAccountId": { + "type": "string", + "description": "The resource identifier of the storage account where data will be imported to or exported from." + }, + "jobType": { + "type": "string", + "description": "The type of job" + }, + "returnAddress": { + "description": "Specifies the return address information for the job. ", + "$ref": "#/definitions/ReturnAddress" + }, + "returnShipping": { + "description": "Specifies the return carrier and customer's account with the carrier. ", + "$ref": "#/definitions/ReturnShipping" + }, + "shippingInformation": { + "description": "Contains information about the Microsoft datacenter to which the drives should be shipped. ", + "$ref": "#/definitions/ShippingInformation" + }, + "deliveryPackage": { + "description": "Contains information about the package being shipped by the customer to the Microsoft data center. ", + "$ref": "#/definitions/PackageInformation" + }, + "returnPackage": { + "description": "Contains information about the package being shipped from the Microsoft data center to the customer to return the drives. The format is the same as the deliveryPackage property above. This property is not included if the drives have not yet been returned. ", + "$ref": "#/definitions/PackageInformation" + }, + "diagnosticsPath": { + "type": "string", + "description": "The virtual blob directory to which the copy logs and backups of drive manifest files (if enabled) will be stored." + }, + "logLevel": { + "type": "string", + "description": "Default value is Error. Indicates whether error logging or verbose logging will be enabled." + }, + "backupDriveManifest": { + "type": "boolean", + "description": "Default value is false. Indicates whether the manifest files on the drives should be copied to block blobs." + }, + "state": { + "type": "string", + "description": "Current state of the job." + }, + "cancelRequested": { + "type": "boolean", + "description": "Indicates whether a request has been submitted to cancel the job." + }, + "percentComplete": { + "type": "integer", + "description": "Overall percentage completed for the job." + }, + "incompleteBlobListUri": { + "type": "string", + "description": "A blob path that points to a block blob containing a list of blob names that were not exported due to insufficient drive space. If all blobs were exported successfully, then this element is not included in the response." + }, + "driveList": { + "description": "List of up to ten drives that comprise the job. The drive list is a required element for an import job; it is not specified for export jobs.", + "type": "array", + "items": { + "$ref": "#/definitions/DriveStatus" + } + }, + "export": { + "description": "A property containing information about the blobs to be exported for an export job. This property is included for export jobs only.", + "$ref": "#/definitions/Export" + }, + "provisioningState": { + "type": "string", + "description": "Specifies the provisioning state of the job." + }, + "encryptionKey": { + "description": "Contains information about the encryption key.", + "$ref": "#/definitions/EncryptionKeyDetails" + } + } + }, + "EncryptionKeyDetails": { + "description": "Specifies the encryption key properties", + "properties": { + "kekType": { + "type": "string", + "description": "The type of kek encryption key", + "default": "MicrosoftManaged", + "enum": [ + "MicrosoftManaged", + "CustomerManaged" + ] + }, + "kekUrl": { + "description": "Specifies the url for kek encryption key. ", + "type": "string" + }, + "kekVaultResourceID": { + "description": "Specifies the keyvault resource id for kek encryption key. ", + "type": "string" + } + } + }, + "IdentityDetails": { + "description": "Specifies the identity properties. ", + "properties": { + "type": { + "type": "string", + "description": "The type of identity", + "default": "None", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned" + ] + }, + "principalId": { + "description": "Specifies the principal id for the identity for the job. ", + "type": "string", + "readOnly": true + }, + "tenantId": { + "description": "Specifies the tenant id for the identity for the job. ", + "type": "string", + "readOnly": true + } + } + }, + "UpdateJobParameters": { + "description": "Update Job parameters", + "properties": { + "tags": { + "type": "object", + "description": "Specifies the tags that will be assigned to the job" + }, + "properties": { + "x-ms-client-flatten": true, + "properties": { + "cancelRequested": { + "type": "boolean", + "description": "If specified, the value must be true. The service will attempt to cancel the job. " + }, + "state": { + "type": "string", + "description": "If specified, the value must be Shipping, which tells the Import/Export service that the package for the job has been shipped. The ReturnAddress and DeliveryPackage properties must have been set either in this request or in a previous request, otherwise the request will fail. " + }, + "returnAddress": { + "description": "Specifies the return address information for the job.", + "$ref": "#/definitions/ReturnAddress" + }, + "returnShipping": { + "description": "Specifies the return carrier and customer's account with the carrier.", + "$ref": "#/definitions/ReturnShipping" + }, + "deliveryPackage": { + "description": "Contains information about the package being shipped by the customer to the Microsoft data center.", + "$ref": "#/definitions/PackageInformation" + }, + "logLevel": { + "type": "string", + "description": "Indicates whether error logging or verbose logging is enabled." + }, + "backupDriveManifest": { + "type": "boolean", + "description": "Indicates whether the manifest files on the drives should be copied to block blobs." + }, + "driveList": { + "description": "List of drives that comprise the job.", + "type": "array", + "items": { + "$ref": "#/definitions/DriveStatus" + } + } + }, + "description": "Specifies the properties of a UpdateJob." + } + } + }, + "ListJobsResponse": { + "description": "List jobs response", + "properties": { + "nextLink": { + "type": "string", + "description": "link to next batch of jobs" + }, + "value": { + "type": "array", + "description": "Job list", + "items": { + "$ref": "#/definitions/JobResponse" + } + } + } + }, + "JobResponse": { + "x-ms-azure-resource": true, + "description": "Contains the job information.", + "properties": { + "id": { + "type": "string", + "description": "Specifies the resource identifier of the job.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Specifies the name of the job.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Specifies the type of the job resource.", + "readOnly": true + }, + "location": { + "type": "string", + "description": "Specifies the Azure location where the job is created." + }, + "tags": { + "type": "object", + "description": "Specifies the tags that are assigned to the job." + }, + "properties": { + "$ref": "#/definitions/JobDetails", + "description": "Specifies the job properties" + }, + "identity": { + "$ref": "#/definitions/IdentityDetails", + "description": "Specifies the job identity details" + } + } + }, + "Operation": { + "description": "Describes a supported operation by the Storage Import/Export job API.", + "required": [ + "name", + "display" + ], + "properties": { + "name": { + "type": "string", + "description": "Name of the operation." + }, + "display": { + "x-ms-client-flatten": true, + "description": "operation display properties", + "properties": { + "provider": { + "type": "string", + "description": "The resource provider name to which the operation belongs." + }, + "resource": { + "type": "string", + "description": "The name of the resource to which the operation belongs." + }, + "operation": { + "type": "string", + "description": "The display name of the operation." + }, + "description": { + "type": "string", + "description": "Short description of the operation." + } + } + } + } + }, + "Location": { + "description": "Provides information about an Azure data center location.", + "properties": { + "id": { + "description": "Specifies the resource identifier of the location. ", + "type": "string" + }, + "name": { + "description": "Specifies the name of the location. Use List Locations to get all supported locations. ", + "type": "string" + }, + "type": { + "description": "Specifies the type of the location. ", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "description": "location properties", + "properties": { + "recipientName": { + "description": "The recipient name to use when shipping the drives to the Azure data center. ", + "type": "string" + }, + "streetAddress1": { + "description": "The first line of the street address to use when shipping the drives to the Azure data center. ", + "type": "string" + }, + "streetAddress2": { + "description": "The second line of the street address to use when shipping the drives to the Azure data center. ", + "type": "string" + }, + "city": { + "description": "The city name to use when shipping the drives to the Azure data center. ", + "type": "string" + }, + "stateOrProvince": { + "description": "The state or province to use when shipping the drives to the Azure data center. ", + "type": "string" + }, + "postalCode": { + "description": "The postal code to use when shipping the drives to the Azure data center. ", + "type": "string" + }, + "countryOrRegion": { + "description": "The country or region to use when shipping the drives to the Azure data center. ", + "type": "string" + }, + "phone": { + "description": "The phone number for the Azure data center. ", + "type": "string" + }, + "supportedCarriers": { + "type": "array", + "description": "A list of carriers that are supported at this location. ", + "items": { + "type": "string" + } + }, + "alternateLocations": { + "type": "array", + "description": "A list of location IDs that should be used to ship shipping drives to for jobs created against the current location. If the current location is active, it will be part of the list. If it is temporarily closed due to maintenance, this list may contain other locations. ", + "items": { + "type": "string" + } + } + } + } + } + }, + "ReturnAddress": { + "description": "Specifies the return address information for the job.", + "required": [ + "recipientName", + "streetAddress1", + "city", + "postalCode", + "countryOrRegion", + "phone", + "email" + ], + "properties": { + "recipientName": { + "type": "string", + "description": "The name of the recipient who will receive the hard drives when they are returned. " + }, + "streetAddress1": { + "type": "string", + "description": "The first line of the street address to use when returning the drives. " + }, + "streetAddress2": { + "type": "string", + "description": "The second line of the street address to use when returning the drives. " + }, + "city": { + "type": "string", + "description": "The city name to use when returning the drives." + }, + "stateOrProvince": { + "type": "string", + "description": "The state or province to use when returning the drives." + }, + "postalCode": { + "type": "string", + "description": "The postal code to use when returning the drives." + }, + "countryOrRegion": { + "type": "string", + "description": "The country or region to use when returning the drives. " + }, + "phone": { + "type": "string", + "description": "Phone number of the recipient of the returned drives." + }, + "email": { + "type": "string", + "description": "Email address of the recipient of the returned drives." + } + } + }, + "ReturnShipping": { + "description": "Specifies the return carrier and customer's account with the carrier.", + "required": [ + "carrierName", + "carrierAccountNumber" + ], + "properties": { + "carrierName": { + "type": "string", + "description": "The carrier's name." + }, + "carrierAccountNumber": { + "type": "string", + "description": "The customer's account number with the carrier." + } + } + }, + "ShippingInformation": { + "description": "Contains information about the Microsoft datacenter to which the drives should be shipped.", + "required": [ + "recipientName", + "streetAddress1", + "city", + "stateOrProvince", + "postalCode", + "countryOrRegion" + ], + "properties": { + "recipientName": { + "type": "string", + "description": "The name of the recipient who will receive the hard drives when they are returned. " + }, + "streetAddress1": { + "type": "string", + "description": "The first line of the street address to use when returning the drives. " + }, + "streetAddress2": { + "type": "string", + "description": "The second line of the street address to use when returning the drives. " + }, + "city": { + "type": "string", + "description": "The city name to use when returning the drives." + }, + "stateOrProvince": { + "type": "string", + "description": "The state or province to use when returning the drives." + }, + "postalCode": { + "type": "string", + "description": "The postal code to use when returning the drives." + }, + "countryOrRegion": { + "type": "string", + "description": "The country or region to use when returning the drives. " + }, + "phone": { + "type": "string", + "description": "Phone number of the recipient of the returned drives." + }, + "additionalInformation": { + "type": "string", + "description": "Additional shipping information for customer, specific to datacenter to which customer should send their disks.", + "readOnly": true + } + } + }, + "PackageInformation": { + "description": "Contains information about the package being shipped by the customer to the Microsoft data center.", + "required": [ + "carrierName", + "trackingNumber", + "driveCount", + "shipDate" + ], + "properties": { + "carrierName": { + "type": "string", + "description": "The name of the carrier that is used to ship the import or export drives." + }, + "trackingNumber": { + "type": "string", + "description": "The tracking number of the package." + }, + "driveCount": { + "type": "integer", + "format": "int64", + "description": "The number of drives included in the package." + }, + "shipDate": { + "type": "string", + "description": "The date when the package is shipped." + } + } + }, + "DriveStatus": { + "description": "Provides information about the drive's status", + "properties": { + "driveId": { + "type": "string", + "description": "The drive's hardware serial number, without spaces." + }, + "bitLockerKey": { + "type": "string", + "description": "The BitLocker key used to encrypt the drive." + }, + "manifestFile": { + "type": "string", + "description": "The relative path of the manifest file on the drive. " + }, + "manifestHash": { + "type": "string", + "description": "The Base16-encoded MD5 hash of the manifest file on the drive." + }, + "driveHeaderHash": { + "type": "string", + "description": "The drive header hash value." + }, + "state": { + "type": "string", + "description": "The drive's current state. ", + "enum": [ + "Specified", + "Received", + "NeverReceived", + "Transferring", + "Completed", + "CompletedMoreInfo", + "ShippedBack" + ], + "x-ms-enum": { + "name": "DriveState", + "modelAsString": true + } + }, + "copyStatus": { + "type": "string", + "description": "Detailed status about the data transfer process. This field is not returned in the response until the drive is in the Transferring state." + }, + "percentComplete": { + "type": "integer", + "description": "Percentage completed for the drive. " + }, + "verboseLogUri": { + "type": "string", + "description": "A URI that points to the blob containing the verbose log for the data transfer operation. " + }, + "errorLogUri": { + "type": "string", + "description": "A URI that points to the blob containing the error log for the data transfer operation." + }, + "manifestUri": { + "type": "string", + "description": "A URI that points to the blob containing the drive manifest file. " + }, + "bytesSucceeded": { + "type": "integer", + "format": "int64", + "description": "Bytes successfully transferred for the drive." + } + } + }, + "Export": { + "description": "A property containing information about the blobs to be exported for an export job. This property is required for export jobs, but must not be specified for import jobs.", + "properties": { + "blobList": { + "description": "A list of the blobs to be exported.", + "x-ms-client-flatten": true, + "properties": { + "blobPath": { + "type": "array", + "description": "A collection of blob-path strings.", + "items": { + "type": "string" + } + }, + "blobPathPrefix": { + "type": "array", + "description": "A collection of blob-prefix strings.", + "items": { + "type": "string" + } + } + } + }, + "blobListBlobPath": { + "type": "string", + "description": "The relative URI to the block blob that contains the list of blob paths or blob path prefixes as defined above, beginning with the container name. If the blob is in root container, the URI must begin with $root. " + } + } + }, + "LocationsResponse": { + "description": "Locations response", + "properties": { + "value": { + "type": "array", + "description": "locations", + "items": { + "$ref": "#/definitions/Location" + } + } + } + }, + "GetBitLockerKeysResponse": { + "description": "GetBitLockerKeys response", + "properties": { + "value": { + "type": "array", + "description": "drive status", + "items": { + "$ref": "#/definitions/DriveBitLockerKey" + } + } + } + }, + "DriveBitLockerKey": { + "description": "BitLocker recovery key or password to the specified drive", + "properties": { + "bitLockerKey": { + "type": "string", + "description": "BitLocker recovery key or password" + }, + "driveId": { + "type": "string", + "description": "Drive ID" + } + } + }, + "ListOperationsResponse": { + "description": "List operations response", + "properties": { + "value": { + "type": "array", + "description": "operations", + "items": { + "$ref": "#/definitions/Operation" + } + } + } + } + }, + "parameters": { + "api-version": { + "name": "api-version", + "in": "query", + "description": "Specifies the API version to use for this request.", + "required": true, + "type": "string", + "enum": [ + "2020-08-01" + ] + }, + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription ID for the Azure user.", + "required": true, + "type": "string" + }, + "resourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The resource group name uniquely identifies the resource group within the user subscription.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "Accept-Language": { + "name": "Accept-Language", + "in": "header", + "description": "Specifies the preferred language for the response.", + "required": false, + "type": "string", + "x-ms-parameter-location": "client" + }, + "x-ms-client-tenant-id": { + "name": "x-ms-client-tenant-id", + "in": "header", + "description": "The tenant ID of the client making the request.", + "required": false, + "type": "string", + "x-ms-client-name": "ClientTenantId", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/storageimportexport/resource-manager/readme.go.md b/specification/storageimportexport/resource-manager/readme.go.md index 9b48808d7a27..28ce19ba3744 100644 --- a/specification/storageimportexport/resource-manager/readme.go.md +++ b/specification/storageimportexport/resource-manager/readme.go.md @@ -15,6 +15,12 @@ go: batch: - tag: package-2016-11 ``` +or + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2020-08 +``` ### Tag: package-2016-11 and go @@ -23,4 +29,13 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-08' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-08-01/$(namespace) ``` \ No newline at end of file diff --git a/specification/storageimportexport/resource-manager/readme.md b/specification/storageimportexport/resource-manager/readme.md index 7b2c9dc33212..dff85c194da0 100644 --- a/specification/storageimportexport/resource-manager/readme.md +++ b/specification/storageimportexport/resource-manager/readme.md @@ -28,7 +28,12 @@ These are the global settings for the StorageImportExport API. openapi-type: arm tag: package-2016-11 ``` +or +``` yaml +openapi-type: arm +tag: package-2020-08 +``` ### Tag: package-2016-11 @@ -39,6 +44,14 @@ input-file: - Microsoft.ImportExport/stable/2016-11-01/storageimportexport.json ``` +### Tag: package-2020-08 + +These settings apply only when `--tag=package-2020-08` is specified on the command line. + +``` yaml $(tag) == 'package-2020-08' +input-file: +- Microsoft.ImportExport/stable/2020-08-01/storageimportexport.json +``` --- # Code Generation @@ -80,6 +93,12 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-storageimportexport batch: - tag: package-2016-11 ``` +or + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2020-08 +``` ### Tag: package-2016-11 and java @@ -94,6 +113,19 @@ regenerate-manager: true generate-interface: true ``` +### Tag: package-2020-08 and java + +These settings apply only when `--tag=package-2020-08 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-08' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.storageimportexport.v2020_08_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/storageimportexport/mgmt-v2020_08_01 +regenerate-manager: true +generate-interface: true +``` + ## Multi-API/Profile support for AutoRest v3 generators @@ -109,6 +141,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - $(this-folder)/Microsoft.ImportExport/stable/2016-11-01/storageimportexport.json + - $(this-folder)/Microsoft.ImportExport/stable/2020-08-01/storageimportexport.json ``` diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/artifacts.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/artifacts.json index 0dfc0e51ebbd..c7b8fb876b6d 100644 --- a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/artifacts.json +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/artifacts.json @@ -1157,6 +1157,42 @@ } } }, + "/triggers/{triggerName}/triggerRuns/{runId}/cancel": { + "post": { + "tags": [ + "triggerruns" + ], + "operationId": "TriggerRun_CancelTriggerInstance", + "x-ms-examples": { + "Triggers_Rerun": { + "$ref": "./examples/TriggerRuns_Cancel.json" + } + }, + "description": "Cancel single trigger instance by runId.", + "parameters": [ + { + "$ref": "#/parameters/triggerName" + }, + { + "$ref": "#/parameters/runId" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "TriggerRun has been cancelled." + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, "/queryTriggerRuns": { "post": { "tags": [ diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/examples/TriggerRuns_Cancel.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/examples/TriggerRuns_Cancel.json new file mode 100644 index 000000000000..169d70a4e4b5 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-06-01-preview/examples/TriggerRuns_Cancel.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "endpoint": "exampleWorkspace.dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "runId": "2f7fdb90-5df1-4b8e-ac2f-064cfa58202b", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:46:24 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1198", + "x-ms-request-id": "5aa854a5-7ac0-4c7e-9356-79c657f4e231", + "x-ms-correlation-request-id": "5aa854a5-7ac0-4c7e-9356-79c657f4e231" + } + } + } +} diff --git a/specification/synapse/data-plane/readme.md b/specification/synapse/data-plane/readme.md index bbc3bb50a0ed..05a24f9f989c 100644 --- a/specification/synapse/data-plane/readme.md +++ b/specification/synapse/data-plane/readme.md @@ -161,12 +161,13 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/artifacts.json - - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/managedPrivateEndpoints.json - $(this-folder)/Microsoft.Synapse/preview/2019-11-01-preview/sparkJob.json - - $(this-folder)/Microsoft.Synapse/preview/2019-11-01-preview/monitoring.json + - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/artifacts.json - $(this-folder)/Microsoft.Synapse/preview/2020-02-01-preview/roles.json - $(this-folder)/Microsoft.Synapse/preview/2020-02-01-preview/roleAssignments.json + - $(this-folder)/Microsoft.Synapse/preview/2019-06-01-preview/managedPrivateEndpoints.json + - $(this-folder)/Microsoft.Synapse/preview/2019-11-01-preview/monitoring.json + ``` If there are files that should not be in the `all-api-versions` set, diff --git a/specification/timeseriesinsights/data-plane/Microsoft.TimeSeriesInsights/preview/2018-11-01-preview/timeseriesinsights.json b/specification/timeseriesinsights/data-plane/Microsoft.TimeSeriesInsights/preview/2018-11-01-preview/timeseriesinsights.json index 687811357947..54f991f6465a 100644 --- a/specification/timeseriesinsights/data-plane/Microsoft.TimeSeriesInsights/preview/2018-11-01-preview/timeseriesinsights.json +++ b/specification/timeseriesinsights/data-plane/Microsoft.TimeSeriesInsights/preview/2018-11-01-preview/timeseriesinsights.json @@ -2,7 +2,7 @@ "swagger": "2.0", "info": { "title": "TimeSeriesInsightsClient", - "description": "Time Series Insights environment data plane client for PAYG (Preview L1 SKU) environments.", + "description": "Time Series Insights environment data plane client for Gen2 (Preview L1 SKU) environments.", "version": "2018-11-01-preview" }, "x-ms-parameterized-host": { @@ -188,7 +188,7 @@ "ModelSettings" ], "operationId": "ModelSettings_Get", - "description": "Returns the model settings which includes model display name, Time Series ID properties and default type ID. Every pay-as-you-go environment has a model that is automatically created.", + "description": "Returns the model settings which includes model display name, Time Series ID properties and default type ID. Every Gen2 environment has a model that is automatically created.", "x-ms-examples": { "ModelSettingsGet": { "$ref": "./examples/ModelSettingsGet.json" diff --git a/specification/timeseriesinsights/data-plane/Microsoft.TimeSeriesInsights/stable/2020-07-31/timeseriesinsights.json b/specification/timeseriesinsights/data-plane/Microsoft.TimeSeriesInsights/stable/2020-07-31/timeseriesinsights.json index c957f645a35f..b808baee2b50 100644 --- a/specification/timeseriesinsights/data-plane/Microsoft.TimeSeriesInsights/stable/2020-07-31/timeseriesinsights.json +++ b/specification/timeseriesinsights/data-plane/Microsoft.TimeSeriesInsights/stable/2020-07-31/timeseriesinsights.json @@ -2,7 +2,7 @@ "swagger": "2.0", "info": { "title": "TimeSeriesInsightsClient", - "description": "Time Series Insights environment data plane client for GA (GA L1 SKU) environments.", + "description": "Time Series Insights environment data plane client for Gen2 (GA L1 SKU) environments.", "version": "2020-07-31" }, "x-ms-parameterized-host": { @@ -188,7 +188,7 @@ "ModelSettings" ], "operationId": "ModelSettings_Get", - "description": "Returns the model settings which includes model display name, Time Series ID properties and default type ID. Every pay-as-you-go environment has a model that is automatically created.", + "description": "Returns the model settings which includes model display name, Time Series ID properties and default type ID. Every Gen2 environment has a model that is automatically created.", "x-ms-examples": { "ModelSettingsGet": { "$ref": "./examples/ModelSettingsGet.json" diff --git a/specification/timeseriesinsights/data-plane/readme.md b/specification/timeseriesinsights/data-plane/readme.md index a1b84838b2b2..86b95fdaf588 100644 --- a/specification/timeseriesinsights/data-plane/readme.md +++ b/specification/timeseriesinsights/data-plane/readme.md @@ -84,7 +84,6 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - $(this-folder)/Microsoft.TimeSeriesInsights/stable/2020-07-31/timeseriesinsights.json - - $(this-folder)/Microsoft.TimeSeriesInsights/preview/2018-11-01-preview/timeseriesinsights.json ``` diff --git a/specification/web/resource-manager/readme.md b/specification/web/resource-manager/readme.md index 758b1ed4df06..721c9c5bd742 100644 --- a/specification/web/resource-manager/readme.md +++ b/specification/web/resource-manager/readme.md @@ -1229,6 +1229,23 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.CertificateRegistration/stable/2020-06-01/AppServiceCertificateOrders.json + - $(this-folder)/Microsoft.CertificateRegistration/stable/2020-06-01/CertificateRegistrationProvider.json + - $(this-folder)/Microsoft.DomainRegistration/stable/2020-06-01/Domains.json + - $(this-folder)/Microsoft.DomainRegistration/stable/2020-06-01/TopLevelDomains.json + - $(this-folder)/Microsoft.DomainRegistration/stable/2020-06-01/DomainRegistrationProvider.json + - $(this-folder)/Microsoft.Web/stable/2020-06-01/Certificates.json + - $(this-folder)/Microsoft.Web/stable/2020-06-01/CommonDefinitions.json + - $(this-folder)/Microsoft.Web/stable/2020-06-01/DeletedWebApps.json + - $(this-folder)/Microsoft.Web/stable/2020-06-01/Diagnostics.json + - $(this-folder)/Microsoft.Web/stable/2020-06-01/Provider.json + - $(this-folder)/Microsoft.Web/stable/2020-06-01/Recommendations.json + - $(this-folder)/Microsoft.Web/stable/2020-06-01/ResourceProvider.json + - $(this-folder)/Microsoft.Web/stable/2020-06-01/WebApps.json + - $(this-folder)/Microsoft.Web/stable/2020-06-01/StaticSites.json + - $(this-folder)/Microsoft.Web/stable/2020-06-01/AppServiceEnvironments.json + - $(this-folder)/Microsoft.Web/stable/2020-06-01/AppServicePlans.json + - $(this-folder)/Microsoft.Web/stable/2020-06-01/ResourceHealthMetadata.json - $(this-folder)/Microsoft.CertificateRegistration/stable/2019-08-01/AppServiceCertificateOrders.json - $(this-folder)/Microsoft.CertificateRegistration/stable/2019-08-01/CertificateRegistrationProvider.json - $(this-folder)/Microsoft.DomainRegistration/stable/2019-08-01/Domains.json