diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index 64dd616e7a22..1a36d0d17086 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -2,7 +2,7 @@ First, thank you for contributing to Azure specs repository! Swagger specs are the basis for generating Azure SDKs in multiple different languages, Azure CLIs for interacting with the services, and can provide documentation for these services. ## Basics -If you're a spec author looking for information about all of of the repositories and steps in the pipeline, go to the [adx-documentation-pr](https://github.com/Azure/adx-documentation-pr) repository. Make sure to [join the Github Azure organization](http://aka.ms/azuregithub) to get access to that repo. +If you're a spec author looking for information about all of the repositories and steps in the pipeline, go to the [adx-documentation-pr](https://github.com/Azure/adx-documentation-pr) repository. Make sure to [join the Github Azure organization](http://aka.ms/azuregithub) to get access to that repo. ## Table of Contents [Before starting](#before-starting) @@ -86,7 +86,7 @@ Use the git tools you have available to you, such as amend, rebase, etc. ## Review process -We review spec PRs to maintain a high bar of quality for all products that will be generated from these specs (including SDKs in all languages, CLIs and documentation). It's critical that spec files are both sytactically and semantically correct, as well as conform to common patterns that make it possible to generate SDKs and CLIs that are usable for customers. Since specs are the base input for all of these products, the review process starts with PRs to this repository. Please refer to [Swagger Review Process](https://github.com/Azure/adx-documentation-pr/wiki/Swagger-Review-Process) for more details. +We review spec PRs to maintain a high bar of quality for all products that will be generated from these specs (including SDKs in all languages, CLIs and documentation). It's critical that spec files are both syntactically and semantically correct, as well as conform to common patterns that make it possible to generate SDKs and CLIs that are usable for customers. Since specs are the base input for all of these products, the review process starts with PRs to this repository. Please refer to [Swagger Review Process](https://github.com/Azure/adx-documentation-pr/wiki/Swagger-Review-Process) for more details. The expectation is that every spec in a PR will be correct JSON, syntactically correct, will semantically agree with the service it applies to, and will follow the recommended patterns. @@ -95,7 +95,7 @@ A spec file must be valid JSON, according to the [JSON specification](https://to #### Semantic correctness Your spec file must correctly represent your service. Even if a spec passes all of the rules listed above, it might not accurately describe the service that it is intended to describe. This could include -- Incorrect schemas for responses or requests (both missing and superfluous properities) +- Incorrect schemas for responses or requests (both missing and superfluous properties) - Missing operations - Missing parameters (especially required ones) - etc (this list is not comprehensive) diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index c545e3b3fbe0..e453a4fc63bc 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,15 +1,7 @@ -This checklist is used to make sure that common issues in a pull request are addressed. This will expedite the process of getting your pull request merged and avoid extra work on your part to fix issues discovered during the review process. - -### PR information -- [ ] The title of the PR is clear and informative. -- [ ] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For information on cleaning up the commits in your pull request, [see this page](https://github.com/Azure/azure-powershell/blob/master/documentation/development-docs/cleaning-up-commits.md). -- [ ] Except for special cases involving multiple contributors, the PR is started from a fork of the main repository, not a branch. -- [ ] If applicable, the PR references the bug/issue that it fixes. -- [ ] Swagger files are correctly named (e.g. the `api-version` in the path should match the `api-version` in the spec). - -### Quality of Swagger -- [ ] I have read the [contribution guidelines](https://github.com/Azure/azure-rest-api-specs/blob/master/.github/CONTRIBUTING.md). -- [ ] My spec meets the review criteria: - - [ ] The spec conforms to the [Swagger 2.0 specification](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md). - - [ ] The spec follows the guidelines described in the [Swagger checklist](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/swagger-checklist.md) document. - - [ ] [Validation tools](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/swagger-checklist.md#validation-tools-for-swagger-checklist) were run on swagger spec(s) and have all been fixed in this PR. +### Latest improvements: +MSFT employees can try out our new experience at [OpenAPI Hub](https://aka.ms/openapiportal) - one location for using our validation tools and finding your workflow. +
+### Contribution checklist: +- [ ] I have reviewed the [documentation](https://github.com/Azure/azure-rest-api-specs#basics) for the workflow. +- [ ] [Validation tools](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/swagger-checklist.md#validation-tools-for-swagger-checklist) were run on swagger spec(s) and have all been fixed in this PR. +- [ ] The [OpenAPI Hub](https://aka.ms/openapiportal) was used for checking validation status and next steps. diff --git a/README.md b/README.md index bee32b5b9506..786c0ad791d0 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,9 @@ This repository is the canonical source for REST API specifications for Microsoft Azure. ## Basics -If you're a spec author looking for information about all of of the repositories and steps in the pipeline, go to the [adx-documentation-pr](https://github.com/Azure/adx-documentation-pr) repository. Make sure to [join the Github Azure organization](http://aka.ms/azuregithub) to get access to that repo. +If you're a spec author looking for information about all of the repositories and steps in the pipeline, go to the [adx-documentation-pr](https://github.com/Azure/adx-documentation-pr) repository. Make sure to [join the Github Azure organization](http://aka.ms/azuregithub) to get access to that repo. + +Latest improvement: Microsoft employees can try out our new experience at [OpenAPI Hub](https://aka.ms/openapihub) - online experience for using our validation tools and finding your workflow. Please check the [announcements page](https://github.com/Azure/azure-rest-api-specs/wiki/Announcements) for any new updates since your last visit. diff --git a/arm-compute/quickstart-templates/aliases.json b/arm-compute/quickstart-templates/aliases.json index 60d07919b422..8c6004242747 100644 --- a/arm-compute/quickstart-templates/aliases.json +++ b/arm-compute/quickstart-templates/aliases.json @@ -56,6 +56,12 @@ }, "Windows":{ + "Win2019Datacenter":{ + "publisher":"MicrosoftWindowsServer", + "offer":"WindowsServer", + "sku":"2019-Datacenter", + "version":"latest" + }, "Win2016Datacenter":{ "publisher":"MicrosoftWindowsServer", "offer":"WindowsServer", diff --git a/arm-compute/quickstart-templates/swagger.json b/arm-compute/quickstart-templates/swagger.json index d31427c555b3..a44fcedcd9f7 100644 --- a/arm-compute/quickstart-templates/swagger.json +++ b/arm-compute/quickstart-templates/swagger.json @@ -242,7 +242,7 @@ }, "outputs": { "type": "object", - "description": "Gets or sets key/value pairs that represent deploymentoutput." + "description": "Gets or sets key/value pairs that represent deployment output." }, "providers": { "type": "array", @@ -344,7 +344,7 @@ "required": [ "uri" ], - "description": "Entity representing the reference to the deployment paramaters." + "description": "Entity representing the reference to the deployment parameters." }, "Provider": { "properties": { diff --git a/documentation/creating-swagger.md b/documentation/creating-swagger.md index 9117ddea7d80..e2bfa9687afa 100644 --- a/documentation/creating-swagger.md +++ b/documentation/creating-swagger.md @@ -59,7 +59,7 @@ The **title** field is used as the name of the generated client. } ``` -``` +```csharp var client = new MyClientName(); ``` Override the title client name by passing the `-ClientName` to AutoRest. @@ -224,7 +224,7 @@ are `in` the `path` must have a `true` value for the `required` field. In this e is populated with the value of userId provided in the client method. ```json5 "paths": { - "/users/{userid}": { + "/users/{userId}": { "get": { "operationId": "users_getById", "parameters": [ @@ -334,7 +334,7 @@ Each operation defines the possible responses by HTTP status code: Swagger allows for specifying a `default` response. AutoRest treats the `default` response as defining an error response status code unless `default` is the only status code defined. The reason for imposing this convention is to produce higher quality API signatures. The return type of the generated API is determined by finding a common -base type of the success responses. In practice, if the default is considered as a potential success defintion, +base type of the success responses. In practice, if the default is considered as a potential success definition, the common ancestor of success responses and error responses ends up being Object. ### Negative Responses @@ -372,7 +372,7 @@ You can describe all the [possible HTTP Response status codes](http://www.w3.org Exception will not be thrown.", }, "default": { - "description": "Default Response. It will be deserialized as per the Error defintion + "description": "Default Response. It will be deserialized as per the Error definition specified in the schema. Exception will be thrown.", "schema": { "$ref": "#/definitions/Error" @@ -414,7 +414,7 @@ Please note, that the use of "x-ms-paths" should be minimized to the above scena The request body and response definitions become simple model types in the generated code. The models include basic validation methods, but are generally stateless serialization definitions. -### Understanding the importance of "type" keyword while definining model types. +### Understanding the importance of "type" keyword while defining model types. "Type-specific" keywords such as properties, items, minLength, etc. do not enforce a type on the schema. It works the other way around – when an instance is validated against a schema, these keywords only apply when the instance is of the corresponding type, otherwise they are ignored. Here's the relevant part of the [JSON Schema Validation](https://tools.ietf.org/html/draft-fge-json-schema-validation-00#section-4.1) spec: > 4.1. Keywords and instance primitive types @@ -674,8 +674,8 @@ as an enum. However, not all enumeration values should necessarily be represente considerations, such as how often expected values might change, since adding a new value to a C# enum is a breaking change requiring an updated API version. Additionally, there is some metadata that is required to create a useful C# enum, such as a descriptive name, which is not represented in swagger. For this reason, enums are not automatically turned into -enum types in C# - instead they are rendered in the documentation comments for the property or parameter to indcate allowed -values. To indicate that an enum will rarely change and that C# enum semantics are desired, use the `x-ms-enum` exension. +enum types in C# - instead they are rendered in the documentation comments for the property or parameter to indicate allowed +values. To indicate that an enum will rarely change and that C# enum semantics are desired, use the `x-ms-enum` extension. In C#, an enum type is generated and is declared as the type of the related request/response object. The enum is serialized as the string expected by the REST API. @@ -697,7 +697,7 @@ as the string expected by the REST API. ``` ### x-ms-enum extension structure -``` +```json5 { "x-ms-enum": { "name" : "Specify the name for the Enum." diff --git a/documentation/openapi-authoring-automated-guidelines.md b/documentation/openapi-authoring-automated-guidelines.md index dbfd12d71e4f..00eeb7d8bd99 100644 --- a/documentation/openapi-authoring-automated-guidelines.md +++ b/documentation/openapi-authoring-automated-guidelines.md @@ -32,34 +32,34 @@ We request OpenAPI(Swagger) spec authoring be assigned to engineers who have an | Id | Rule Name | Applies to | | --- | --- | --- | -| [R3012](#R3012) | [APIVersionPattern](#R3012) | ARM OpenAPI(swagger) specs | -| [R3019](#R3019) | [ARMResourcePropertiesBag](#R3019) | ARM and Data plane OpenAPI(swagger) specs | -| [R3014](#R3014) | [BodyPropertiesNamesCamelCase](#R3014) | ARM and Data plane OpenAPI(swagger) specs | -| [R3016](#R3016) | [DefinitionsPropertiesNamesCamelCase](#R3016) | ARM and Data plane OpenAPI(swagger) specs | -| [R3006](#R3006) | [BodyTopLevelProperties](#R3006) | ARM OpenAPI(swagger) specs | -| [R3008](#R3008) | [CollectionObjectPropertiesNaming](#R3008) | ARM and Data plane OpenAPI(swagger) specs | -| [R2044](#R2044) | [InvalidVerbUsed](#R2044) | ARM and Data plane OpenAPI(swagger) specs | -| [R3023](#R3023) | [OperationsAPIImplementation](#R3023) | ARM OpenAPI(swagger) specs | -| [R3007](#R3007) | [PutGetPatchResponseSchema](#R3007) | ARM and Data plane OpenAPI(swagger) specs | -| [R3025](#R3025) | [TrackedResourceGetOperation](#R3025) | ARM OpenAPI(swagger) specs | -| [R3026](#R3026) | [TrackedResourcePatchOperation](#R3026) | ARM OpenAPI(swagger) specs | -| [R2059](#R2059) | [UniqueResourcePaths](#R2059) | ARM OpenAPI(swagger) specs | -| [R2016](#R2016) | [PatchBodyParametersSchema](#R2016) | ARM and Data plane OpenAPI(swagger) specs | -| [R2062](#R2062) | [XmsResourceInPutResponse](#R2062) | ARM OpenAPI(swagger) specs | -| [R3027](#R3027) | [TrackedResourceListByResourceGroup](#R3027) | ARM OpenAPI(swagger) specs | -| [R3028](#R3028) | [TrackedResourceListBySubscription](#R3028) | ARM OpenAPI(swagger) specs | -| [R3011](#R3011) | [DescriptionMustNotBeNodeName](#R3011) | ARM and Data plane OpenAPI(swagger) specs | -| [R2020](#R2020) | [RequiredPropertiesMissingInResourceModel](#R2020) | ARM OpenAPI(swagger) specs | +| [R3012](#r3012) | [APIVersionPattern](#r3012) | ARM OpenAPI(swagger) specs | +| [R3019](#r3019) | [ARMResourcePropertiesBag](#r3019) | ARM and Data plane OpenAPI(swagger) specs | +| [R3014](#r3014) | [BodyPropertiesNamesCamelCase](#r3014) | ARM and Data plane OpenAPI(swagger) specs | +| [R3016](#r3016) | [DefinitionsPropertiesNamesCamelCase](#r3016) | ARM and Data plane OpenAPI(swagger) specs | +| [R3006](#r3006) | [BodyTopLevelProperties](#r3006) | ARM OpenAPI(swagger) specs | +| [R3008](#r3008) | [CollectionObjectPropertiesNaming](#r3008) | ARM and Data plane OpenAPI(swagger) specs | +| [R2044](#r2044) | [InvalidVerbUsed](#r2044) | ARM and Data plane OpenAPI(swagger) specs | +| [R3023](#r3023) | [OperationsAPIImplementation](#r3023) | ARM OpenAPI(swagger) specs | +| [R3007](#r3007) | [PutGetPatchResponseSchema](#r3007) | ARM and Data plane OpenAPI(swagger) specs | +| [R3025](#r3025) | [TrackedResourceGetOperation](#r3025) | ARM OpenAPI(swagger) specs | +| [R3026](#r3026) | [TrackedResourcePatchOperation](#r3026) | ARM OpenAPI(swagger) specs | +| [R2059](#r2059) | [UniqueResourcePaths](#r2059) | ARM OpenAPI(swagger) specs | +| [R2016](#r2016) | [PatchBodyParametersSchema](#r2016) | ARM and Data plane OpenAPI(swagger) specs | +| [R2062](#r2062) | [XmsResourceInPutResponse](#r2062) | ARM OpenAPI(swagger) specs | +| [R3027](#r3027) | [TrackedResourceListByResourceGroup](#r3027) | ARM OpenAPI(swagger) specs | +| [R3028](#r3028) | [TrackedResourceListBySubscription](#r3028) | ARM OpenAPI(swagger) specs | +| [R3011](#r3011) | [DescriptionMustNotBeNodeName](#r3011) | ARM and Data plane OpenAPI(swagger) specs | +| [R2020](#r2020) | [RequiredPropertiesMissingInResourceModel](#r2020) | ARM OpenAPI(swagger) specs | #### ARM Warnings | Id | Rule Name | Applies to | | --- | --- | --- | -| [R3018](#R3018) | [EnumInsteadOfBoolean](#R3018) | ARM and Data plane OpenAPI(swagger) specs | -| [R3017](#R3017) | [GuidUsage](#R3017) | ARM and Data plane OpenAPI(swagger) specs | -| [R2057](#R2057) | [InvalidSkuModel](#R2057) | ARM OpenAPI(swagger) specs | -| [R3010](#R3010) | [TrackedResourceListByImmediateParent](#R3010) | ARM OpenAPI(swagger) specs | -| [R2004](#R2004) | [NonApplicationJsonType](#R2004) | ARM OpenAPI(swagger) specs | +| [R3018](#r3018) | [EnumInsteadOfBoolean](#r3018) | ARM and Data plane OpenAPI(swagger) specs | +| [R3017](#r3017) | [GuidUsage](#r3017) | ARM and Data plane OpenAPI(swagger) specs | +| [R2057](#r2057) | [InvalidSkuModel](#r2057) | ARM OpenAPI(swagger) specs | +| [R3010](#r3010) | [TrackedResourceListByImmediateParent](#r3010) | ARM OpenAPI(swagger) specs | +| [R2004](#r2004) | [NonApplicationJsonType](#r2004) | ARM OpenAPI(swagger) specs | ### SDK Violations @@ -67,57 +67,57 @@ We request OpenAPI(Swagger) spec authoring be assigned to engineers who have an | Id | Rule Name | Applies to | | --- | --- | --- | -| [R2024](#R2024) | [AnonymousBodyParameter](#R2024) | ARM and Data plane OpenAPI(swagger) specs | -| [R2026](#R2026) | [AvoidAnonymousTypes](#R2026) | ARM and Data plane OpenAPI(swagger) specs | -| [R2014](#R2014) | [SubscriptionIdParameterInOperations](#R2014) | ARM and Data plane OpenAPI(swagger) specs | -| [R2027](#R2027) | [DefaultMustBeInEnum](#R2027) | ARM and Data plane OpenAPI(swagger) specs | -| [R1001](#R1001) | [OperationIdNounInVerb](#R1001) | ARM and Data plane OpenAPI(swagger) specs | -| [R2055](#R2055) | [OneUnderscoreInOperationId](#R2055) | ARM and Data plane OpenAPI(swagger) specs | -| [R2003](#R2003) | [ValidFormats](#R2003) | ARM and Data plane OpenAPI(swagger) specs | -| [R2005](#R2005) | [LongRunningResponseStatusCode](#R2005) | ARM and Data plane OpenAPI(swagger) specs | -| [R2008](#R2008) | [MutabilityWithReadOnlyRule](#R2008) | ARM and Data plane OpenAPI(swagger) specs | -| [R2025](#R2025) | [NextLinkPropertyMustExist](#R2025) | ARM and Data plane OpenAPI(swagger) specs | -| [R2028](#R2028) | [NonEmptyClientName](#R2028) | ARM and Data plane OpenAPI(swagger) specs | -| [R2060](#R2060) | [PageableRequires200Response](#R2060) | ARM and Data plane OpenAPI(swagger) specs | -| [R2019](#R2019) | [ResourceHasXMsResourceEnabled](#R2019) | ARM OpenAPI(swagger) specs | -| [R2058](#R2058) | [XmsPathsMustOverloadPaths](#R2058) | ARM and Data plane OpenAPI(swagger) specs | -| [R2012](#R2012) | [XmsClientNameParameter](#R2012) | ARM and Data plane OpenAPI(swagger) specs | -| [R2013](#R2013) | [XmsClientNameProperty](#R2013) | ARM and Data plane OpenAPI(swagger) specs | -| [R2047](#R2047) | [NamePropertyDefinitionInParameter](#R2047) | ARM and Data plane OpenAPI(swagger) specs | -| [R2056](#R2056) | [RequiredReadOnlyProperties](#R2056) | ARM and Data plane OpenAPI(swagger) specs | -| [R2054](#R2054) | [SecurityDefinitionsStructure](#R2054) | ARM OpenAPI(swagger) specs | -| [R2006](#R2006) | [ControlCharactersNotAllowed](#R2006) | ARM and Data plane OpenAPI(swagger) specs | -| [R2009](#R2009) | [ArraySchemaMustHaveItems](#R2009) | ARM and Data plane OpenAPI(swagger) specs | -| [R3013](#R3013) | [DeleteMustNotHaveRequestBody](#R3013) | ARM and Data plane OpenAPI(swagger) specs | -| [R4001](#R4001) | [XmsParameterLocation](#R4001) | ARM and Data plan OpenAPI(swagger) specs | +| [R2024](#r2024) | [AnonymousBodyParameter](#r2024) | ARM and Data plane OpenAPI(swagger) specs | +| [R2026](#r2026) | [AvoidAnonymousTypes](#r2026) | ARM and Data plane OpenAPI(swagger) specs | +| [R2014](#r2014) | [SubscriptionIdParameterInOperations](#r2014) | ARM and Data plane OpenAPI(swagger) specs | +| [R2027](#r2027) | [DefaultMustBeInEnum](#r2027) | ARM and Data plane OpenAPI(swagger) specs | +| [R1001](#r1001) | [OperationIdNounInVerb](#r1001) | ARM and Data plane OpenAPI(swagger) specs | +| [R2055](#r2055) | [OneUnderscoreInOperationId](#r2055) | ARM and Data plane OpenAPI(swagger) specs | +| [R2003](#r2003) | [ValidFormats](#r2003) | ARM and Data plane OpenAPI(swagger) specs | +| [R2005](#r2005) | [LongRunningResponseStatusCode](#r2005) | ARM and Data plane OpenAPI(swagger) specs | +| [R2008](#r2008) | [MutabilityWithReadOnlyRule](#r2008) | ARM and Data plane OpenAPI(swagger) specs | +| [R2025](#r2025) | [NextLinkPropertyMustExist](#r2025) | ARM and Data plane OpenAPI(swagger) specs | +| [R2028](#r2028) | [NonEmptyClientName](#r2028) | ARM and Data plane OpenAPI(swagger) specs | +| [R2060](#r2060) | [PageableRequires200Response](#r2060) | ARM and Data plane OpenAPI(swagger) specs | +| [R2019](#r2019) | [ResourceHasXMsResourceEnabled](#r2019) | ARM OpenAPI(swagger) specs | +| [R2058](#r2058) | [XmsPathsMustOverloadPaths](#r2058) | ARM and Data plane OpenAPI(swagger) specs | +| [R2012](#r2012) | [XmsClientNameParameter](#r2012) | ARM and Data plane OpenAPI(swagger) specs | +| [R2013](#r2013) | [XmsClientNameProperty](#r2013) | ARM and Data plane OpenAPI(swagger) specs | +| [R2047](#r2047) | [NamePropertyDefinitionInParameter](#r2047) | ARM and Data plane OpenAPI(swagger) specs | +| [R2056](#r2056) | [RequiredReadOnlyProperties](#r2056) | ARM and Data plane OpenAPI(swagger) specs | +| [R2054](#r2054) | [SecurityDefinitionsStructure](#r2054) | ARM OpenAPI(swagger) specs | +| [R2006](#r2006) | [ControlCharactersNotAllowed](#r2006) | ARM and Data plane OpenAPI(swagger) specs | +| [R2009](#r2009) | [ArraySchemaMustHaveItems](#r2009) | ARM and Data plane OpenAPI(swagger) specs | +| [R3013](#r3013) | [DeleteMustNotHaveRequestBody](#r3013) | ARM and Data plane OpenAPI(swagger) specs | +| [R4001](#r4001) | [XmsParameterLocation](#r4001) | ARM and Data plan OpenAPI(swagger) specs | #### SDK Warnings | Id | Rule Name | Applies to | | --- | --- | --- | -| [R4000](#R4000-2) | [ParameterDescriptionRequired](#R4000-2) | ARM and Data plane OpenAPI(swagger) specs | -| [R4000](#R4000-3) | [DescriptiveDescriptionRequired](#R4000-3) | ARM and Data plane OpenAPI(swagger) specs | -| [R4000](#R4000-4) | [DescriptionAndTitleMissing](#R4000-4) | ARM and Data plane OpenAPI(swagger) specs | -| [R4000](#R4000-5) | [OperationDescriptionOrSummaryRequired](#R4000-5) | ARM and Data plane OpenAPI(swagger) specs | -| [R2001](#R2001) | [AvoidNestedProperties](#R2001) | ARM and Data plane OpenAPI(swagger) specs | -| [R4002](#R4002) | [LocationMustHaveXmsMutability](#R4002) | ARM OpenAPI(swagger) specs | -| [R2066](#R2066) | [PostOperationIdContainsUrlVerb](#R2066) | ARM and Data plane OpenAPI(swagger) specs | -| [R2015](#R2015) | [ParameterNotDefinedInGlobalParameters](#R2015) | ARM and Data plane OpenAPI(swagger) specs | -| [R1010](#R1010) | [AvoidMSDNReferences](#R1010) | ARM and Data plane OpenAPI(swagger) specs | -| [R2017](#R2017) | [PutRequestResponseScheme](#R2017) | ARM and Data plane OpenAPI(swagger) specs | -| [R1009](#R1009) | [DeleteInOperationName](#R1009) | ARM and Data plane OpenAPI(swagger) specs | -| [R1005](#R1005) | [GetInOperationName](#R1005) | ARM and Data plane OpenAPI(swagger) specs | -| [R1003](#R1003) | [ListInOperationName](#R1003) | ARM and Data plane OpenAPI(swagger) specs | -| [R1006](#R1006) | [PutInOperationName](#R1006) | ARM and Data plane OpenAPI(swagger) specs | -| [R1007](#R1007) | [PatchInOperationName](#R1007) | ARM and Data plane OpenAPI(swagger) specs | -| [R1011](#R1011) | [HttpsSupportedScheme](#R1011) | ARM OpenAPI(swagger) specs | -| [R2065](#R2065) | [LicenseHeaderMustNotBeSpecified](#R2065) | ARM and Data plane OpenAPI(swagger) specs | -| [R2018](#R2018) | [XmsEnumValidation](#R2018) | ARM and Data plane OpenAPI(swagger) specs | -| [R3060](#R3060) | [XmsPageableListByRGAndSubscriptions](#R3060) | ARM OpenAPI(swagger) specs | -| [R2063](#R2063) | [OperationIdNounConflictingModelNames](#R2063) | ARM and Data plane OpenAPI(swagger) specs | -| [R2064](#R2064) | [LROStatusCodesReturnTypeSchema](#R2064) | ARM and Data plane OpenAPI(swagger) specs | -| [R2023](#R2023) | [SummaryAndDescriptionMustNotBeSame](#R2023) | ARM and Data plane OpenAPI(swagger) specs | -| [R2010](#R2010) | [LongRunningOperationsOptionsValidator](#R2010) | ARM and Data plane OpenAPI(swagger) specs | +| [R4000](#r4000-2) | [ParameterDescriptionRequired](#r4000-2) | ARM and Data plane OpenAPI(swagger) specs | +| [R4000](#r4000-3) | [DescriptiveDescriptionRequired](#r4000-3) | ARM and Data plane OpenAPI(swagger) specs | +| [R4000](#r4000-4) | [DescriptionAndTitleMissing](#r4000-4) | ARM and Data plane OpenAPI(swagger) specs | +| [R4000](#r4000-5) | [OperationDescriptionOrSummaryRequired](#r4000-5) | ARM and Data plane OpenAPI(swagger) specs | +| [R2001](#r2001) | [AvoidNestedProperties](#r2001) | ARM and Data plane OpenAPI(swagger) specs | +| [R4002](#r4002) | [LocationMustHaveXmsMutability](#r4002) | ARM OpenAPI(swagger) specs | +| [R2066](#r2066) | [PostOperationIdContainsUrlVerb](#r2066) | ARM and Data plane OpenAPI(swagger) specs | +| [R2015](#r2015) | [ParameterNotDefinedInGlobalParameters](#r2015) | ARM and Data plane OpenAPI(swagger) specs | +| [R1010](#r1010) | [AvoidMSDNReferences](#r1010) | ARM and Data plane OpenAPI(swagger) specs | +| [R2017](#r2017) | [PutRequestResponseScheme](#r2017) | ARM and Data plane OpenAPI(swagger) specs | +| [R1009](#r1009) | [DeleteInOperationName](#r1009) | ARM and Data plane OpenAPI(swagger) specs | +| [R1005](#r1005) | [GetInOperationName](#r1005) | ARM and Data plane OpenAPI(swagger) specs | +| [R1003](#r1003) | [ListInOperationName](#r1003) | ARM and Data plane OpenAPI(swagger) specs | +| [R1006](#r1006) | [PutInOperationName](#r1006) | ARM and Data plane OpenAPI(swagger) specs | +| [R1007](#r1007) | [PatchInOperationName](#r1007) | ARM and Data plane OpenAPI(swagger) specs | +| [R1011](#r1011) | [HttpsSupportedScheme](#r1011) | ARM OpenAPI(swagger) specs | +| [R2065](#r2065) | [LicenseHeaderMustNotBeSpecified](#r2065) | ARM and Data plane OpenAPI(swagger) specs | +| [R2018](#r2018) | [XmsEnumValidation](#r2018) | ARM and Data plane OpenAPI(swagger) specs | +| [R3060](#r3060) | [XmsPageableListByRGAndSubscriptions](#r3060) | ARM OpenAPI(swagger) specs | +| [R2063](#r2063) | [OperationIdNounConflictingModelNames](#r2063) | ARM and Data plane OpenAPI(swagger) specs | +| [R2064](#r2064) | [LROStatusCodesReturnTypeSchema](#r2064) | ARM and Data plane OpenAPI(swagger) specs | +| [R2023](#r2023) | [SummaryAndDescriptionMustNotBeSame](#r2023) | ARM and Data plane OpenAPI(swagger) specs | +| [R2010](#r2010) | [LongRunningOperationsOptionsValidator](#r2010) | ARM and Data plane OpenAPI(swagger) specs | ### Documentation @@ -125,18 +125,18 @@ We request OpenAPI(Swagger) spec authoring be assigned to engineers who have an | Id | Rule Name | Applies to | | --- | --- | --- | -| [D5001](#D5001) | [XmsExamplesRequired](#D5001) | ARM and Data plane OpenAPI(swagger) specs | +| [D5001](#d5001) | [XmsExamplesRequired](#d5001) | ARM and Data plane OpenAPI(swagger) specs | ## Rule Descriptions -### R3012 APIVersionPattern +### R3012 APIVersionPattern **Category** : ARM Error **Applies to**: ARM OpenAPI(swagger) specs **Output Message**: API Version must be in the format: yyyy-MM-dd, optionally followed by -preview, -alpha, -beta, -rc, -privatepreview. -**Description**: The API Version paramemter MUST be in the Year-Month-Date format (i.e. 2016-07-04.) NOTE that this is the en-US ordering of month and date. +**Description**: The API Version parameter MUST be in the Year-Month-Date format (i.e. 2016-07-04.) NOTE that this is the en-US ordering of month and date. The date MAY optionally be followed by one of: * -preview - Indicates the API version is in (public) preview @@ -165,10 +165,10 @@ The date MAY optionally be followed by one of: Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R3014 BodyPropertiesNamesCamelCase - Please refer to [R3016](#R3016) +### R3014 BodyPropertiesNamesCamelCase + Please refer to [R3016](#r3016) -### R3016 DefinitionsPropertiesNamesCamelCase +### R3016 DefinitionsPropertiesNamesCamelCase **Category** : ARM Error **Applies to** : ARM and Data Plane OpenAPI(swagger) specs @@ -178,7 +178,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **Description**: Property names must use lowerCamelCase style. If the property is a single word (ex: foo, bar, etc.) it will be all lowercase. -Two-letter acronmys (ex: ID, IO, IP, etc.) should be capitalized. +Two-letter acronyms (ex: ID, IO, IP, etc.) should be capitalized. Three-letter acronyms (ex: API, URL, etc.) should only have the first letter capitalized (ex: Api, Url, etc.) For more capitalization guidance, see: [https://msdn.microsoft.com/en-us/library/141e06ef(v=vs.71).aspx](https://msdn.microsoft.com/en-us/library/141e06ef(v=vs.71).aspx) @@ -207,7 +207,7 @@ For more capitalization guidance, see: [https://msdn.microsoft.com/en-us/library Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R3025 TrackedResourceGetOperation +### R3025 TrackedResourceGetOperation **Category** : ARM Error **Applies to** : ARM OpenAPI(swagger) specs @@ -228,7 +228,7 @@ If the resource pointed by the rule is not a tracked resource, this warning may Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R3026 TrackedResourcePatchOperation +### R3026 TrackedResourcePatchOperation **Category** : ARM Error **Applies to** : ARM OpenAPI(swagger) specs @@ -249,7 +249,7 @@ If the resource pointed by the rule is not a tracked resource, this warning may Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R3027 TrackedResourceListByResourceGroup +### R3027 TrackedResourceListByResourceGroup **Category** : ARM Error **Applies to** : ARM OpenAPI(swagger) specs @@ -270,7 +270,7 @@ If the resource pointed by the rule is not a tracked resource or the operation t Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R3028 TrackedResourceListBySubscription +### R3028 TrackedResourceListBySubscription **Category** : ARM Error **Applies to** : ARM OpenAPI(swagger) specs @@ -291,7 +291,7 @@ If the resource pointed by the rule is not a tracked resource or the operation t Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R3010 TrackedResourceListByImmediateParent +### R3010 TrackedResourceListByImmediateParent **Category** : ARM Warning **Applies to** : ARM OpenAPI(swagger) specs @@ -312,7 +312,7 @@ If the resource pointed by the rule is not a tracked resource this warning may b Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R3018 EnumInsteadOfBoolean +### R3018 EnumInsteadOfBoolean **Category** : ARM Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -331,7 +331,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R4002 LocationMustHaveXmsMutability +### R4002 LocationMustHaveXmsMutability **Category** : SDK Warning **Applies to** : ARM OpenAPI(swagger) specs @@ -344,7 +344,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **How to fix the violation**: Ensure that the `location` property in the tracked resource's hierarchy has `x-ms-mutability` correctly set to `read` and `create`. For example: -``` +```json "location": { "type": "string", "description": "location of the resource", @@ -354,7 +354,7 @@ For example: Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2028 NonEmptyClientName +### R2028 NonEmptyClientName **Category** : SDK Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -370,7 +370,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **Impact on generated code**: Generated SDK code will expose the corresponding client name on property or model. **Examples**: -``` +```json ... "x-ms-client-name": "name" ... @@ -378,7 +378,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2066 PostOperationIdContainsUrlVerb +### R2066 PostOperationIdContainsUrlVerb **Category** : SDK Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -403,7 +403,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2009 ArraySchemaMustHaveItems +### R2009 ArraySchemaMustHaveItems **Category** : SDK Error **Applies to** : ARM and Data Plane OpenAPI(swagger) specs @@ -418,7 +418,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **Good Examples**: Example with primitive type. -``` +```json "MyPrimitiveArray":{ "type": "array", "items": { @@ -427,7 +427,7 @@ Example with primitive type. } ``` Example with object reference type -``` +```json "MyComplexArray":{ "type": "array", "items": { @@ -438,7 +438,7 @@ Example with object reference type Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2012 XmsClientNameParameter +### R2012 XmsClientNameParameter **Category** : SDK Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -454,7 +454,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **Impact on generated code**: Generated SDK code will expose the corresponding client name on property or model. **Examples**: -``` +```json "parameters": { "ApiVersionParameter": { "name": "x-ms-version", @@ -480,7 +480,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2013 XmsClientNameProperty +### R2013 XmsClientNameProperty **Category** : SDK Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -496,7 +496,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **Impact on generated code**: Generated SDK code will expose the corresponding client name on property or model. **Examples**: -``` +```json { "definitions": { "Product": { @@ -513,7 +513,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R1010 AvoidMsdnReferences +### R1010 AvoidMsdnReferences **Category** : SDK Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -524,7 +524,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **Why the rule is important**: Facilitate decoupling of "msdn.microsoft.com" from "docs.microsoft.com". -**How to fix the violation**: Please avoid using referenes to "msdn.microsoft.com" in title and descriptions. +**How to fix the violation**: Please avoid using references to "msdn.microsoft.com" in title and descriptions. **Impact on generated code**: N/A. @@ -532,7 +532,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R1009 DeleteInOperationName +### R1009 DeleteInOperationName **Category** : SDK Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -555,7 +555,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R1005 GetInOperationName +### R1005 GetInOperationName **Category** : SDK Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -578,7 +578,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R1003 ListInOperationName +### R1003 ListInOperationName **Category** : SDK Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -600,7 +600,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R1006 PutInOperationName +### R1006 PutInOperationName **Category** : SDK Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -622,7 +622,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R1007 PatchInOperationName +### R1007 PatchInOperationName **Category** : SDK Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -643,12 +643,12 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R3017 GuidUsage +### R3017 GuidUsage **Category** : ARM Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs -**Output Message**: Guid used in model definition '{1}' for property '{0}'. Usage of Guid is not recommanded. If GUIDs are absolutely required in your service, please get sign off from the Azure API review board. +**Output Message**: Guid used in model definition '{1}' for property '{0}'. Usage of Guid is not recommended. If GUIDs are absolutely required in your service, please get sign off from the Azure API review board. **Description**: Verifies whether format is specified as "uuid" or not. @@ -662,7 +662,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R1011 HttpsSupportedScheme +### R1011 HttpsSupportedScheme **Category** : SDK Warning **Applies to** : ARM OpenAPI(swagger) specs @@ -678,7 +678,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **Impact on generated code**: N/A. **Examples**: -``` +```json "schemes": [ "https" ] @@ -686,7 +686,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2004 NonApplicationJsonType +### R2004 NonApplicationJsonType **Category** : ARM Warning **Applies to** : ARM OpenAPI(swagger) specs @@ -703,7 +703,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2059 UniqueResourcePaths +### R2059 UniqueResourcePaths **Category** : ARM Error **Applies to** : ARM OpenAPI(swagger) specs @@ -721,7 +721,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **Examples**: **Bad Examples**: Following example contains 2 resource providers. **Microsoft.Compute** and **Microsoft.Network**. -``` +```json "paths": { "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces": { "get": { @@ -759,7 +759,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2006 ControlCharactersNotAllowed +### R2006 ControlCharactersNotAllowed **Category** : SDK Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -777,7 +777,7 @@ Control characters are not allowed in a specification. Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2008 MutabilityWithReadOnly +### R2008 MutabilityWithReadOnly **Category** : SDK Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -791,7 +791,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **How to fix the violation**: Based on the value of the `readOnly` property, assign appropriate `x-ms-mutability` options. **Bad Example**: -``` +```json "prop0":{ "type": "string", "readOnly":true, @@ -799,7 +799,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul } ``` **Good Example**: -``` +```json "prop0":{ "type": "string", "readOnly": false, @@ -809,21 +809,21 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2058 XmsPathsMustOverloadPaths +### R2058 XmsPathsMustOverloadPaths **Category** : SDK Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs **Output Message**: Paths in x-ms-paths must overload a normal path in the paths section, i.e. a path in the x-ms-paths must either be same as a path in the paths section or a path in the paths sections followed by additional parameters. -**Description**: The `x-ms-paths` extension allows us to overload an existing path based on path parameters. We cannot specify an `x-ms-paths` without a path that already exists in the `paths` section. For more details about this extension please refere [here](https://github.com/Azure/azure-rest-api-specs/blob/dce4da0d748565efd2ab97a43d0683c2979a974a/documentation/swagger-extensions.md#x-ms-paths). +**Description**: The `x-ms-paths` extension allows us to overload an existing path based on path parameters. We cannot specify an `x-ms-paths` without a path that already exists in the `paths` section. For more details about this extension please refer [here](https://github.com/Azure/azure-rest-api-specs/blob/dce4da0d748565efd2ab97a43d0683c2979a974a/documentation/swagger-extensions.md#x-ms-paths). **Why the rule is important**: The `x-ms-paths` overload an existing path only, not adhering to this rule would violate the applicability of the extension itself. **How to fix the violation**: Ensure that the `x-ms-paths` is overloading an existing url path in the `paths` section. **Good Example**: -``` +```json "paths":{ "/foo":{ ... @@ -836,7 +836,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul } ``` **Bad Example**: -``` +```json "paths":{ "/foo":{ ... @@ -851,7 +851,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2001 AvoidNestedProperties +### R2001 AvoidNestedProperties **Category** : SDK Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -866,7 +866,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R3008 CollectionObjectPropertiesNaming +### R3008 CollectionObjectPropertiesNaming **Category** : ARM Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -881,7 +881,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2027 DefaultMustBeInEnum +### R2027 DefaultMustBeInEnum **Category** : SDK Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -895,7 +895,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **How to fix the violation**: Ensure that the default desired actually exists in the enums' list. **Bad Example**: -``` +```json "status":{ "type": "string", "enum": [ @@ -910,7 +910,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2047 NamePropertyDefinitionInParameter +### R2047 NamePropertyDefinitionInParameter **Category** : SDK Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -924,7 +924,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **How to fix the violation**: Add a non-empty `name` property to the parameter. **Good Example**: -``` +```json "MyParam":{ "name":"myParam", "type": "string", @@ -934,7 +934,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul ``` **Bad Example**: -``` +```json "MyParam":{ "type": "string", "in": "path", @@ -944,7 +944,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R1001 OperationIdNounVerb +### R1001 OperationIdNounVerb **Category** : SDK Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -969,14 +969,14 @@ Certificate_Activate Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2055 OneUnderscoreInOperationId +### R2055 OneUnderscoreInOperationId **Category** : SDK Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs **Output Message**: Only 1 underscore is permitted in the operation id, following Noun_Verb conventions. -**Description**: An operationId can have exaclty one underscore, not adhering to it can cause errors in code generation. +**Description**: An operationId can have exactly one underscore, not adhering to it can cause errors in code generation. **Why the rule is important**: Given an operationId of the form `Noun_Verb`, AutoRest breaks the operation id into its `Noun` and `Verb` where `Noun` becomes name of the operations class and the `Verb` becomes the name of the method in that class. Not adhering to this format can cause AutoRest to fail during code generation. @@ -993,7 +993,7 @@ PrimaryCertificate_Activate Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R3023 OperationsAPIImplementation +### R3023 OperationsAPIImplementation **Category** : ARM Error **Applies to** : ARM OpenAPI(swagger) specs @@ -1007,7 +1007,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **How to fix the violation**: Add an operations API endpoint (if not already present) and add details regarding this endpoint in the corresponding OpenAPI document. Examples can be found for most RPs in this repo. **Example**: A typical operations path would look like -``` +```json "/providers/Microsoft.ResourceProviderName/operations": { "get": { "tags": [ @@ -1039,7 +1039,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul } ``` A typical `OperationsList` and `Operation` model would look like -``` +```json "Operation": { "description": "REST API operation", @@ -1089,7 +1089,7 @@ A typical `OperationsList` and `Operation` model would look like Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2015 ParameterNotDefinedInGlobalParameters +### R2015 ParameterNotDefinedInGlobalParameters **Category** : SDK Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1106,7 +1106,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2020 RequiredPropertiesMissingInResourceModel +### R2020 RequiredPropertiesMissingInResourceModel **Category** : ARM Error **Applies to** : ARM OpenAPI(swagger) specs @@ -1121,7 +1121,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2056 RequiredReadOnlyProperties +### R2056 RequiredReadOnlyProperties **Category** : SDK Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1135,7 +1135,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **How to fix the violation**: Ensure that the given property is either marked as `readonly: true` or `required` but not both. **Bad Example**: -``` +```json "MyModel": { "properties":{ "MyProp":{ @@ -1150,7 +1150,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2014 SubscriptionIdParameterInOperations +### R2014 SubscriptionIdParameterInOperations **Category** : SDK Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1165,7 +1165,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2003 ValidFormats +### R2003 ValidFormats **Category** : SDK Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1174,13 +1174,13 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **Description**: Only valid types are allowed for properties. -**Why the rule is important**: Invalid formats can cause errors during code generation or result in erraneous generated code. +**Why the rule is important**: Invalid formats can cause errors during code generation or result in erroneous generated code. **How to fix the violation**: Ensure format defined for property is valid. Please refer [here](https://github.com/Azure/autorest/blob/81d4d31d06637f4f9ef042d7f2ec64cfea29892f/docs/developer/validation-rules/valid-formats.md) for allowed types in OpenAPI. Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### D5001 XmsExamplesRequired +### D5001 XmsExamplesRequired **Category** : Documentation Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1199,7 +1199,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2065 LicenseHeaderMustNotBeSpecified +### R2065 LicenseHeaderMustNotBeSpecified **Category** : SDK Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1212,7 +1212,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2025 NextLinkPropertyMustExist +### R2025 NextLinkPropertyMustExist **Category** : SDK Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1231,14 +1231,14 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2060 PageableRequires200Response +### R2060 PageableRequires200Response **Category** : SDK Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs **Output Message**: A response for the 200 HTTP status code must be defined to use x-ms-pageable. -**Description**: Per definition of AutoRest [x-ms-pageable extension](https://github.com/Azure/autorest/blob/master/docs/extensions/readme.md#x-ms-pageable), the response shema must contain a 200 response schema. +**Description**: Per definition of AutoRest [x-ms-pageable extension](https://github.com/Azure/autorest/blob/master/docs/extensions/readme.md#x-ms-pageable), the response schema must contain a 200 response schema. **Why the rule is important**: Pageable operation needs to have a response schema to be used by the SDK to serialize/deserialize the result. @@ -1250,7 +1250,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2024 AnonymousBodyParameter +### R2024 AnonymousBodyParameter **Category** : SDK Error **Applies to** : ARM specs @@ -1265,7 +1265,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2026 AvoidAnonymousTypes +### R2026 AvoidAnonymousTypes **Category** : SDK Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1341,7 +1341,7 @@ public class FooCreationSettings { Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R3019 ArmResourcePropertiesBag +### R3019 ArmResourcePropertiesBag **Category** : ARM Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1396,7 +1396,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul ``` Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R3006 BodyTopLevelProperties +### R3006 BodyTopLevelProperties **Category** : ARM Error **Applies to** : ARM OpenAPI(swagger) specs @@ -1448,7 +1448,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul ``` Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2057 InvalidSkuModel +### R2057 InvalidSkuModel **Category** : ARM Warning **Applies to** : ARM OpenAPI(swagger) specs @@ -1465,16 +1465,16 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2018 XmsEnumValidation +### R2018 XmsEnumValidation **Category** : SDK Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs **Output Message**: The enum types should have x-ms-enum type extension set with appropriate options. Property name: {0}. -**Description**: AutoRest defines [x-ms-enum extension](https://github.com/Azure/autorest/blob/master/docs/extensions/readme.md#x-ms-enum) to provide more flexibily for enum types, please refer to the documentation. +**Description**: AutoRest defines [x-ms-enum extension](https://github.com/Azure/autorest/blob/master/docs/extensions/readme.md#x-ms-enum) to provide more flexibility for enum types, please refer to the documentation. -**Why the rule is important**: Including [x-ms-enum extension](https://github.com/Azure/autorest/blob/master/docs/extensions/readme.md#x-ms-enum) provides more flexibilty for enum types in SDK generated code. +**Why the rule is important**: Including [x-ms-enum extension](https://github.com/Azure/autorest/blob/master/docs/extensions/readme.md#x-ms-enum) provides more flexibility for enum types in SDK generated code. **How to fix the violation**: Include the [x-ms-enum extension](https://github.com/Azure/autorest/blob/master/docs/extensions/readme.md#x-ms-enum) per indicated in its documentation. Consider setting "modelAsString": true, if you'd like the enum to be modeled as a string in generated SDKs, no enum validation will happen, though the values are exposed to the user for a better experience. @@ -1482,7 +1482,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2063 OperationIdNounConflictingModelNames +### R2063 OperationIdNounConflictingModelNames **Category** : SDK Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1497,7 +1497,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2054 SecurityDefinitionsStructure +### R2054 SecurityDefinitionsStructure **Category** : SDK Error **Applies to** : ARM OpenAPI(swagger) specs @@ -1512,7 +1512,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2019 ResourceHasXMsResourceEnabled +### R2019 ResourceHasXMsResourceEnabled **Category** : SDK Error **Applies to** : ARM OpenAPI(swagger) specs @@ -1527,22 +1527,22 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2017 PutRequestResponseScheme +### R2017 PutRequestResponseScheme **Category** : SDK Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs **Output Message**: A PUT operation request body schema should be the same as its 200 response schema, to allow reusing the same entity between GET and PUT. If the schema of the PUT request body is a superset of the GET response body, make sure you have a PATCH operation to make the resource updatable. Operation: '{0}' Request Model: '{1}' Response Model: '{2}' -**Description**: The request & reponse('200') schema of the PUT operation must be same. +**Description**: The request & response('200') schema of the PUT operation must be same. **Why the rule is important**: This will provide a consistent experience to the user, i.e. the user could use the same model object to perform various operations. Also, within the SDK, this will encourage reuse of the same model objects. -**How to fix the violation**: Ensure the request & reponse('200') schema of the PUT operation must be same. This might involve a service side change which will result cause a breaking change in the generated SDK. +**How to fix the violation**: Ensure the request & response('200') schema of the PUT operation must be same. This might involve a service side change which will result cause a breaking change in the generated SDK. Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2005 LongRunningResponseStatusCode +### R2005 LongRunningResponseStatusCode **Category** : SDK Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1557,7 +1557,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2044 InvalidVerbUsed +### R2044 InvalidVerbUsed **Category** : ARM Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1572,7 +1572,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R3007 PutGetPatchResponseSchema +### R3007 PutGetPatchResponseSchema **Category** : ARM Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1587,7 +1587,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R3013 DeleteMustNotHaveRequestBody +### R3013 DeleteMustNotHaveRequestBody **Category** : SDK Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1602,7 +1602,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2062 XmsResourceInPutResponse +### R2062 XmsResourceInPutResponse **Category** : ARM Error **Applies to** : ARM OpenAPI(swagger) specs @@ -1617,7 +1617,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R3060 XmsPageableListByRGAndSubscriptions +### R3060 XmsPageableListByRGAndSubscriptions **Category** : SDK Warning **Applies to** : ARM OpenAPI(swagger) specs @@ -1632,7 +1632,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2064 LROStatusCodesReturnTypeSchema +### R2064 LROStatusCodesReturnTypeSchema **Category** : SDK Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1647,7 +1647,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2016 PatchBodyParametersSchema +### R2016 PatchBodyParametersSchema **Category** : ARM Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1662,7 +1662,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R4000 ParameterDescriptionRequired +### R4000 ParameterDescriptionRequired **Category** : SDK Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1677,7 +1677,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R4000 DescriptiveDescriptionRequired +### R4000 DescriptiveDescriptionRequired **Category** : SDK Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1692,7 +1692,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R4000 DescriptionAndTitleMissing +### R4000 DescriptionAndTitleMissing **Category** : SDK Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1703,11 +1703,11 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **Why the rule is important**: Appropriate documentation could not be generated without the 'description'/'title' property. -**How to fix the violation**: For each definition, provide atleast one of the properties - description/title. +**How to fix the violation**: For each definition, provide at least one of the properties - description/title. Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R4000 OperationDescriptionOrSummaryRequired +### R4000 OperationDescriptionOrSummaryRequired **Category** : SDK Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1718,11 +1718,11 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **Why the rule is important**: Appropriate documentation could not be generated without the 'description'/'summary' property. -**How to fix the violation**: For each operation, provide atleast one of the property - description/summary. +**How to fix the violation**: For each operation, provide at least one of the property - description/summary. Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2023 SummaryAndDescriptionMustNotBeSame +### R2023 SummaryAndDescriptionMustNotBeSame **Category** : SDK Warning **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1736,12 +1736,12 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **How to fix the violation**: Provide a short summary for the summary section and a detailed description for the description section. **Good Examples**: The following operation is a good example: -``` +```json ...... ...... "put": { - "summary": "Creates or Updates an availabilty set", - "description": "This operation creates or updates an availability set. This takes the resourceGroupName and availabiltySetName as input. If an availability set with the same name exists, then the same is updated. Else a new availabilty set is created.", + "summary": "Creates or Updates an availability set", + "description": "This operation creates or updates an availability set. This takes the resourceGroupName and availabilitySetName as input. If an availability set with the same name exists, then the same is updated. Else a new availability set is created.", ..... ..... } @@ -1750,12 +1750,12 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul ``` **Bad Examples**: The following would be invalid: -``` +```json ...... ...... "put": { - "summary": "Creates or Updates an availabilty set", - "description": "Creates or Updates an availabilty set", + "summary": "Creates or Updates an availability set", + "description": "Creates or Updates an availability set", ..... ..... } @@ -1765,7 +1765,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R3011 DescriptionMustNotBeNodeName +### R3011 DescriptionMustNotBeNodeName **Category** : ARM Error **Applies to** : ARM and Data plane OpenAPI(swagger) specs @@ -1780,7 +1780,7 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R4001 XmsParameterLocation +### R4001 XmsParameterLocation **Category** : SDK Error @@ -1788,11 +1788,11 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **Output Message** : The parameter '{your parameter name}' is defined in global parameters section without 'x-ms-parameter-location' extension. This would add the parameter as the client property. Please ensure that this is exactly you want. If so, apply the extension "x-ms-parameter-location": "client". Else, apply the extension "x-ms-parameter-location": "method". -**Description** : SDKs generated by AutoRest have two types of operation parameters: method arguments and client fields. The `x-ms-parameter-location` extension gives the Swagger author control of how an operation-parameter will be interpreted by AutoRest, and as such is one of few things in a Swagger document that has semantic value only relvant to the shape of the generated SDKs. +**Description** : SDKs generated by AutoRest have two types of operation parameters: method arguments and client fields. The `x-ms-parameter-location` extension gives the Swagger author control of how an operation-parameter will be interpreted by AutoRest, and as such is one of few things in a Swagger document that has semantic value only relevant to the shape of the generated SDKs. Some parameters, such as API Version and Subscription ID will make sense as part of nearly every request. For these, having developers specify them for each method call would be burdensome; attaching them to the client and automatically including them in each request makes way more sense. Other parameters will be very operation specific and should be provided each time the method is called. -**Why this rule is important**: Without providing the parameter-location, constructor parameter lists end up incorporating entries that are only relevant to one of the methods that belong to a type. Needlees to say, this can spiral out of control and turn your SDKs into gunk. +**Why this rule is important**: Without providing the parameter-location, constructor parameter lists end up incorporating entries that are only relevant to one of the methods that belong to a type. Needless to say, this can spiral out of control and turn your SDKs into gunk. **How to fix the violation**: For each parameter in the document-level "parameters" section of your document provide either: ``` json @@ -1807,7 +1807,7 @@ or Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2010 LongRunningOperationsOptionsValidator +### R2010 LongRunningOperationsOptionsValidator **Category** : SDK Warning diff --git a/documentation/swagger-authoring-descriptions.md b/documentation/swagger-authoring-descriptions.md index daf1cb8a79ca..7334bc42940a 100644 --- a/documentation/swagger-authoring-descriptions.md +++ b/documentation/swagger-authoring-descriptions.md @@ -20,7 +20,7 @@ Therefore, take the time to craft your descriptions well! This doc provides some - [Arjun Swagger Viewer](https://marketplace.visualstudio.com/items?itemName=Arjun.swagger-viewer) is another Swagger preview extension, but has less validation warnings. - [OpenAPI Linting Extension](https://github.com/Azure/openapi-lint-extension#preview) can be used to check your Swagger for common mistakes. -3. Treat these descriptions like the rest of your code. Plan to have them throughly reviewed, either by a content developer or an engineering team member with English language writing experience. CodeFlow and the CodeFlow GitHub Chrome extension are a great way to do this. +3. Treat these descriptions like the rest of your code. Plan to have them thoroughly reviewed, either by a content developer or an engineering team member with English language writing experience. CodeFlow and the CodeFlow GitHub Chrome extension are a great way to do this. ## Basic rules for public docs (descriptions) @@ -47,7 +47,7 @@ Below is a list of common expectations for published description strings that yo 1. Right now, description strings are very limited in their expressiveness. The Open Publishing (OP) DocFX tool does not currently support the rendering of GFM syntax, nor does it support any documentation-friendly vendor extensions at this time. (This will change.) If you need more expressive formatting, contact a content developer for the CSI org and ask them to create overwrite files for the REST API reference page and the similar client SDK pages (for Java, .NET, and Azure CLI 2.0). -2. Some level of redundancy is good! For example, if you have an operation "GET /notes/latest", it's okay to have a description "Gets the latest notes." and to leave it at that. While any dev worth her salt can look at the operation and the path and come to the same conclusion, this adds a level of scanability to the page -- especially for newer developers, their eyes will go to the prose before attempting to parse the API syntax. Also, an empty operation description on a doc page makes it look like we don't care and that the docs are autogenerated from sources without any respect for the human beings that might read them. +2. Some level of redundancy is good! For example, if you have an operation `GET /notes/latest`, it's okay to have a description "Gets the latest notes." and to leave it at that. While any dev worth her salt can look at the operation and the path and come to the same conclusion, this adds a level of scanability to the page -- especially for newer developers, their eyes will go to the prose before attempting to parse the API syntax. Also, an empty operation description on a doc page makes it look like we don't care and that the docs are autogenerated from sources without any respect for the human beings that might read them. 3. Need to provide more detail for a critical or complex API? Contact your content developer in CSI, and we can create an "overwrite" Markdown file that adds remarks, code samples, and formatted descriptions for your published API doc. We won't do this for every API, but we're also aware that there are some serious limitations with our early tools and approach -- and that some APIs are more equal than others. diff --git a/documentation/swagger-checklist.md b/documentation/swagger-checklist.md index f054457091a2..05933d96b41b 100644 --- a/documentation/swagger-checklist.md +++ b/documentation/swagger-checklist.md @@ -12,7 +12,7 @@ This checklist is a current snapshot of requirements for developing Swagger spec Today, there are tools available for validating a sizable portion of this checklist. Please install these tools on your development machine and use them to validate your Swaggers as you build them. -- [AutoRest OpenAPI Validator](https://github.com/Azure/autorest/blob/master/docs/user/cli.md#validation) – The OpenAPI validator (activated with `--azure-validator`) statically analyzes a Swagger for errors and violations of requirements outlined in the automated rules checklist. The validator should be run when Swaggers are created or updated. It will be continously updated to validate newer requirements. +- [AutoRest OpenAPI Validator](https://github.com/Azure/autorest/blob/master/docs/user/cli.md#validation) – The OpenAPI validator (activated with `--azure-validator`) statically analyzes a Swagger for errors and violations of requirements outlined in the automated rules checklist. The validator should be run when Swaggers are created or updated. It will be continuously updated to validate newer requirements. **NOTE**: This checkmark ( :white_check_mark: ) indicates that rule is covered by AutoRest validation tool. - [Swagger Model Validator](https://github.com/Azure/openapi-validation-tools) - Model Validator validates models defined for body parameters and responses, and matches them against the expected input and output of an operation. To make this real, test examples are required to be specified in a Swagger for every operation defined in a Swagger. Test examples are integrated into a Swagger using the ["x-ms-examples"](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/x-ms-examples.md) extension, which will be used to test against the defined models. Sample test examples for this extension can be found in the [Redis Cache Swagger](https://github.com/Azure/azure-rest-api-specs/blob/master/arm-redis/2016-04-01/swagger/redis.json ). diff --git a/documentation/x-ms-examples.md b/documentation/x-ms-examples.md index 1ac2b4a2fef1..16584d474363 100644 --- a/documentation/x-ms-examples.md +++ b/documentation/x-ms-examples.md @@ -23,7 +23,7 @@ Field Pattern | Type | Description **_shortcomings/concerns_**: What if the service team wants to show different examples. Scenario: GET on NetworkInterface with $expand and without $expand will have an impact on the NetworkSecurityGroup property of the NIC. In the former it will be a full blown NSG and in the latter it will be a Subresource(object with one property 'id')? - - _**For any model definition**_ (body parameter is a model definition; example: StorageAccountCreateParameters), [swagger specfication says](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#fixed-fields-13): + - _**For any model definition**_ (body parameter is a model definition; example: StorageAccountCreateParameters), [swagger specification says](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#fixed-fields-13): Field Name | Type | Description ---|:---:|--- @@ -82,13 +82,13 @@ _This will keep the spec cleaner and easy to manage._ - The JSON schema for the content to be provided in the example file can be found [here](https://raw.githubusercontent.com/Azure/autorest/master/schema/example-schema.json). ```json5 "x-ms-examples": { - "example-name": { //Name of the example/scenario. + "example-name": { //Name of the example/scenario. It is free-form text and should succinctly describe the scenario. "parameters": { //Provide examples for all the path, query, header, body, formData parameters as applicable. ... }, "responses": { //Provide examples of the response headers and body per status code (as per the operation defined in the swagger spec) as applicable. "statusCode1": { - "headers": { ... }, //Examples for location, azure-asyncoperation, retry-after response headers for long running (asynchronous) operations would be valueable + "headers": { ... }, //Examples for location, azure-asyncoperation, retry-after response headers for long running (asynchronous) operations would be valuable "body": { ... } }, "statuscode2": { ... } diff --git a/package.json b/package.json index 6d0dd1e06fee..270c65eef6a1 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ "json-schema-ref-parser": "^3.1.2", "mocha": "*", "oad": "^0.1.11", - "oav": "^0.6.2", + "oav": "^0.8.1", "request": "^2.61.0", "request-promise-native": "^1.0.5", "z-schema": "^3.16.1" diff --git a/profile/2017-03-09-profile.json b/profile/2017-03-09-profile.json index 38a4ccf15854..4760b33fd04a 100644 --- a/profile/2017-03-09-profile.json +++ b/profile/2017-03-09-profile.json @@ -1,7 +1,7 @@ { "info":{ "name":"2017-03-09-profile", - "description":"Profile definition targeted for hybrid applications that could run on azure stack general avaialbility version and azure cloud" + "description":"Profile definition targeted for hybrid applications that could run on azure stack general availability version and azure cloud" }, "resource-manager": { "microsoft.authorization": { diff --git a/profile/2018-03-01-hybrid.json b/profile/2018-03-01-hybrid.json index 26a5d8156475..b67a13f39cf4 100644 --- a/profile/2018-03-01-hybrid.json +++ b/profile/2018-03-01-hybrid.json @@ -91,7 +91,7 @@ "subscriptions/resourceGroups/resources", "subscriptions/resources", "subscriptions/tagNames", - "subscriptions/tagNames/tagValues", + "subscriptions/tagNames/tagValues" ] }, "microsoft.storage": { @@ -102,7 +102,7 @@ "operations", "storageAccounts", "usages" - ] + ] }, "microsoft.web": { "2016-03-01":[ @@ -110,7 +110,7 @@ "deploymentLocations", "georegions", "operations", - "recommendations", + "recommendations", "runtimes", "validate" ], diff --git a/profile/readme.md b/profile/readme.md index 3eb0ddc690e4..b93c994e0fdf 100644 --- a/profile/readme.md +++ b/profile/readme.md @@ -1,16 +1,16 @@ -# API Profile +# API Profile ## Description The files in the folder describe the map of each resource provider's resource types and their supported api versions in the api profile. ## Basics -An API profile represents a map of resource provider namespaces and their API versions. It is a representation of an Azure Platform declaring a set of APIs to be supported across all our clouds.Instead of specifying individual api-versions for each resource type across each namespace, the developer can just align the application to a profile and the tools/SDKs will themselves select the right api-versions as directed by the profile. With API Profiles developers can specify a profile version that applies to an entire template and, at runtime, ARM will pick the right versions of the resources. This way, the customers don’t have to worry about which are the right resource versions to specific clouds. +An API profile represents a map of resource provider namespaces and their API versions. It is a representation of an Azure Platform declaring a set of APIs to be supported across all our clouds.Instead of specifying individual api-versions for each resource type across each namespace, the developer can just align the application to a profile and the tools/SDKs will themselves select the right api-versions as directed by the profile. With API Profiles developers can specify a profile version that applies to an entire template and, at runtime, ARM will pick the right versions of the resources. This way, the customers don’t have to worry about which are the right resource versions to specific clouds. https://docs.microsoft.com/en-us/azure/azure-stack/user/azure-stack-version-profiles ## File Structure -The profile is a one to one map. The api version specified is a single version for the resource type, although the reource type could support other older api versions as well. +The profile is a one to one map. The api version specified is a single version for the resource type, although the resource type could support other older api versions as well. 1. **Resource manager map**: The top level node `resource-manager` defines the map for the management plane of the resource provider and api version of the resource type @@ -30,7 +30,7 @@ The structure should appear like below: | | "name":"xxxx-xx-xx-profile", | | "description":"description of profile" \----}, -+---"resource-manager": { ++---"resource-manager": { | +---"rp-namespace1": { | | +---"api-version1":[ | | +---"resourcetype1", diff --git a/specification/addons/resource-manager/Microsoft.Addons/preview/2018-03-01/addons-swagger.json b/specification/addons/resource-manager/Microsoft.Addons/preview/2018-03-01/addons-swagger.json index 730f3b561af3..333d8238eafd 100644 --- a/specification/addons/resource-manager/Microsoft.Addons/preview/2018-03-01/addons-swagger.json +++ b/specification/addons/resource-manager/Microsoft.Addons/preview/2018-03-01/addons-swagger.json @@ -295,7 +295,7 @@ }, "CanonicalSupportPlanInfoDefinition": { "type": "object", - "description": "Definition object with the properties of a camonical plan", + "description": "Definition object with the properties of a canonical plan", "properties": { "supportPlanType": { "type": "string", diff --git a/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/ADHybridHealthService.json b/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/ADHybridHealthService.json index 7ff20eec12e6..46e80b072a21 100644 --- a/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/ADHybridHealthService.json +++ b/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/ADHybridHealthService.json @@ -4587,7 +4587,7 @@ "description": "The AAD side user principal name.", "type": "string" }, - "aadDistringuishedName": { + "aadDistinguishedName": { "description": "The AAD side distinguished name for the object.", "type": "string" }, diff --git a/specification/adhybridhealthservice/resource-manager/readme.go.md b/specification/adhybridhealthservice/resource-manager/readme.go.md new file mode 100644 index 000000000000..557f9c2eb641 --- /dev/null +++ b/specification/adhybridhealthservice/resource-manager/readme.go.md @@ -0,0 +1,26 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +``` yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + namespace: adhybridhealthservice + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2014-01 +``` + +### Tag: package-2014-01 and go + +These settings apply only when `--tag=package-2014-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2014-01' && $(go) +output-folder: $(go-sdk-folder)/services/adhybridhealthservice/mgmt/2014-01-01/adhybridhealthservice +``` diff --git a/specification/adhybridhealthservice/resource-manager/readme.md b/specification/adhybridhealthservice/resource-manager/readme.md index 0894fbe80bdd..bf70e561423e 100644 --- a/specification/adhybridhealthservice/resource-manager/readme.md +++ b/specification/adhybridhealthservice/resource-manager/readme.md @@ -88,31 +88,7 @@ python: ## Go -These settings apply only when `--go` is specified on the command line. - -``` yaml $(go) -go: - license-header: MICROSOFT_APACHE_NO_VERSION - namespace: adhybridhealthservice - clear-output-folder: true -``` - -### Go multi-api - -``` yaml $(go) && $(multiapi) -batch: - - tag: package-2014-01 -``` - -### Tag: package-2014-01 and go - -These settings apply only when `--tag=package-2014-01 --go` is specified on the command line. -Please also specify `--go-sdk-folder=`. - -``` yaml $(tag) == 'package-2014-01' && $(go) -output-folder: $(go-sdk-folder)/services/adhybridhealthservice/mgmt/2014-01-01/adhybridhealthservice -``` - +See configuration in [readme.go.md](./readme.go.md) ## Java diff --git a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2018-05-05/AlertsManagement.json b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2018-05-05/AlertsManagement.json index ca549e250e7a..be39f0573a39 100644 --- a/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2018-05-05/AlertsManagement.json +++ b/specification/alertsmanagement/resource-manager/Microsoft.AlertsManagement/stable/2018-05-05/AlertsManagement.json @@ -3,7 +3,7 @@ "info": { "version": "2018-05-05", "title": "Azure Alerts Management Service Resource Provider", - "description": "Azure Alerts Management Service provides a single pane of glass of alerts borne from Azure Monitor." + "description": "Azure Alerts Management Service provides a single pane of glass of alerts across Azure Monitor." }, "schemes": [ "https" @@ -40,7 +40,7 @@ ], "responses": { "200": { - "description": "OK. Succesfully retrieved operations list.", + "description": "OK. Successfully retrieved operations list.", "schema": { "$ref": "#/definitions/operationsList" } @@ -54,7 +54,7 @@ "/subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/alerts": { "get": { "operationId": "Alerts_GetAll", - "description": "List all the existing alerts, where the results can be selective by passing multiple filter parameters including time range and sorted on specific fields. ", + "description": "List all existing alerts, where the results can be filtered on the basis of multiple parameters (e.g. time range). The results can then be sorted on the basis specific fields, with the default being lastModifiedDateTime. ", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -119,7 +119,7 @@ ], "responses": { "200": { - "description": "OK. Succesfully listed alert objects.", + "description": "OK. Successfully listed alert objects.", "schema": { "$ref": "#/definitions/alertsList" } @@ -184,7 +184,7 @@ "/subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/alerts/{alertId}/changestate": { "post": { "operationId": "Alerts_ChangeState", - "description": "Change the state of the alert.", + "description": "Change the state of an alert.", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -223,7 +223,7 @@ "/subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/alerts/{alertId}/history": { "get": { "operationId": "Alerts_GetHistory", - "description": "Get the history of the changes of an alert.", + "description": "Get the history of an alert, which captures any monitor condition changes (Fired/Resolved) and alert state changes (New/Acknowledged/Closed).", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -237,7 +237,7 @@ ], "responses": { "200": { - "description": "OK. Returns the list of changes of alert.", + "description": "OK. Returns the history of the specified alert.", "schema": { "$ref": "#/definitions/alertModification" } @@ -259,7 +259,7 @@ "/subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/alertsSummary": { "get": { "operationId": "Alerts_GetSummary", - "description": "Summary of alerts with the count each severity.", + "description": "Get a summarized count of your alerts grouped by various parameters (e.g. grouping by 'Severity' returns the count of alerts for each severity).", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -328,8 +328,8 @@ "/subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/smartGroups": { "get": { "operationId": "SmartGroups_GetAll", - "summary": "Get all smartGroups within the subscription", - "description": "List all the smartGroups within the specified subscription. ", + "summary": "Get all Smart Groups within a specified subscription", + "description": "List all the Smart Groups within a specified subscription. ", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -399,8 +399,8 @@ "/subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/smartGroups/{smartGroupId}": { "get": { "operationId": "SmartGroups_GetById", - "summary": "Get information of smart alerts group.", - "description": "Get details of smart group.", + "summary": "Get information related to a specific Smart Group.", + "description": "Get information related to a specific Smart Group.", "produces": [ "application/json" ], @@ -445,7 +445,7 @@ "/subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/smartGroups/{smartGroupId}/changeState": { "post": { "operationId": "SmartGroups_ChangeState", - "description": "Change the state from unresolved to resolved and all the alerts within the smart group will also be resolved.", + "description": "Change the state of a Smart Group.", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -462,7 +462,7 @@ ], "responses": { "200": { - "description": "OK. Alert state updated.", + "description": "OK. Smart Group state updated.", "headers": { "x-ms-request-id": { "type": "string", @@ -490,7 +490,7 @@ "/subscriptions/{subscriptionId}/providers/Microsoft.AlertsManagement/smartGroups/{smartGroupId}/history": { "get": { "operationId": "SmartGroups_GetHistory", - "description": "Get the history of the changes of smart group.", + "description": "Get the history a smart group, which captures any Smart Group state changes (New/Acknowledged/Closed) .", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -539,7 +539,7 @@ "in": "query", "required": true, "enum": [ - "2018-05-05T00:00:00.000Z" + "2018-05-05" ], "x-ms-enum": { "name": "api-version", @@ -579,7 +579,7 @@ "x-ms-parameter-location": "method" }, "monitorService": { - "description": "Filter by monitor service which is the source of the alert instance. Default value is select all.", + "description": "Filter by monitor service which generates the alert instance. Default value is select all.", "name": "monitorService", "type": "string", "in": "query", @@ -607,7 +607,7 @@ } }, "severity": { - "description": "Filter by severity. Defaut value is select all.", + "description": "Filter by severity. Default value is select all.", "name": "severity", "type": "string", "in": "query", @@ -693,7 +693,7 @@ } }, "monitorCondition": { - "description": "Filter by monitor condition which is the state of the monitor(alertRule) at monitor service. Default value is to select all.", + "description": "Filter by monitor condition which is either 'Fired' or 'Resolved'. Default value is to select all.", "name": "monitorCondition", "type": "string", "in": "query", @@ -709,7 +709,7 @@ } }, "alertRule": { - "description": "Filter by alert rule(monitor) which fired alert instance. Default value is to select all.", + "description": "Filter by specific alert rule. Default value is to select all.", "name": "alertRule", "type": "string", "in": "query", @@ -743,7 +743,7 @@ "x-ms-parameter-location": "method" }, "includeContext": { - "description": "Include context which has data contextual to the monitor service. Default value is false'", + "description": "Include context which has contextual data specific to the monitor service. Default value is false'", "name": "includeContext", "type": "boolean", "in": "query", @@ -799,7 +799,7 @@ } }, "alertsSummaryGroupBy": { - "description": "This parameter allows the result set to be aggregated by input fields. For example, groupby=severity,alertstate.", + "description": "This parameter allows the result set to be grouped by input fields. For example, groupby=severity,alertstate.", "name": "groupby", "type": "string", "in": "query", @@ -819,7 +819,7 @@ } }, "smartGroupsSortBy": { - "description": "Sort the query results by input field Default value is sort by 'lastModifiedDateTime'.", + "description": "Sort the query results by input field. Default value is sort by 'lastModifiedDateTime'.", "name": "sortBy", "type": "string", "in": "query", @@ -850,7 +850,7 @@ ] }, "select": { - "description": "This filter allows to selection of the fields(comma seperated) which would be part of the the essential section. This would allow to project only the required fields rather than getting entire content. Default is to fetch all the fields in the essentials section.", + "description": "This filter allows to selection of the fields(comma separated) which would be part of the essential section. This would allow to project only the required fields rather than getting entire content. Default is to fetch all the fields in the essentials section.", "name": "select", "type": "string", "in": "query", @@ -1015,16 +1015,16 @@ }, "alertContext": { "type": "object", - "description": "More details which are contextual to the monitor service.", + "description": "Information specific to the monitor service that gives more contextual details about the alert.", "readOnly": true }, "essentials": { "type": "object", - "description": "This object contains normalized fields across different monitor service and also contains state related fields.", + "description": "This object contains consistent fields across different monitor services.", "properties": { "severity": { "type": "string", - "description": "Severity of alert Sev0 being highest and Sev3 being lowest.", + "description": "Severity of alert Sev0 being highest and Sev4 being lowest.", "readOnly": true, "enum": [ "Sev0", @@ -1040,7 +1040,7 @@ }, "signalType": { "type": "string", - "description": "Log based alert or metric based alert", + "description": "The type of signal the alert is based on, which could be metrics, logs or activity logs.", "readOnly": true, "enum": [ "Metric", @@ -1054,7 +1054,7 @@ }, "alertState": { "type": "string", - "description": "Alert object state, which is modified by the user.", + "description": "Alert object state, which can be modified by the user.", "readOnly": true, "enum": [ "New", @@ -1068,7 +1068,7 @@ }, "monitorCondition": { "type": "string", - "description": "Represents rule condition(Fired/Resolved) maintained by monitor service depending on the state of the state.", + "description": "Can be 'Fired' or 'Resolved', which represents whether the underlying conditions have crossed the defined alert rule thresholds.", "readOnly": true, "enum": [ "Fired", @@ -1155,7 +1155,7 @@ "monitorConditionResolvedDateTime": { "type": "string", "format": "date-time", - "description": "Resolved time(ISO-8601 format) of alert instance. This will be updated when monitor service resolves the alert instance because of the rule condition is not met.", + "description": "Resolved time(ISO-8601 format) of alert instance. This will be updated when monitor service resolves the alert instance because the rule condition is no longer met.", "readOnly": true }, "lastModifiedUserName": { @@ -1531,4 +1531,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/alertsmanagement/resource-manager/readme.go.md b/specification/alertsmanagement/resource-manager/readme.go.md index 4341e8cb6d5a..15f8da2cd650 100644 --- a/specification/alertsmanagement/resource-manager/readme.go.md +++ b/specification/alertsmanagement/resource-manager/readme.go.md @@ -12,14 +12,14 @@ go: ### Go multi-api ``` yaml $(go) && $(multiapi) batch: - - tag: package-2018-05-preview + - tag: package-2018-05 ``` -### Tag: package-2018-05-preview and go +### Tag: package-2018-05 and go -These settings apply only when `--tag=package-2018-05-preview --go` is specified on the command line. +These settings apply only when `--tag=package-2018-05 --go` is specified on the command line. Please also specify `--go-sdk-folder=`. -``` yaml $(tag) == 'package-2018-05-preview' && $(go) -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2018-05-05-preview/$(namespace) -``` \ No newline at end of file +``` yaml $(tag) == 'package-2018-05' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2018-05-05/$(namespace) +``` diff --git a/specification/analysisservices/resource-manager/Microsoft.AnalysisServices/preview/2017-08-01-beta/analysisservices.json b/specification/analysisservices/resource-manager/Microsoft.AnalysisServices/preview/2017-08-01-beta/analysisservices.json index dcc953755ad0..f8b0cb247a87 100644 --- a/specification/analysisservices/resource-manager/Microsoft.AnalysisServices/preview/2017-08-01-beta/analysisservices.json +++ b/specification/analysisservices/resource-manager/Microsoft.AnalysisServices/preview/2017-08-01-beta/analysisservices.json @@ -209,7 +209,7 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AnalysisServices/servers/{serverName}/suspend": { "post": { - "description": "Supends operation of the specified Analysis Services server instance.", + "description": "Suspends operation of the specified Analysis Services server instance.", "x-ms-examples": { "Suspend a server.": { "$ref": "./examples/suspendServer.json" } }, @@ -949,7 +949,7 @@ }, "enablePowerBIService": { "type": "string", - "description": "The indicator of enableing PBI service." + "description": "The indicator of enabling PBI service." } } }, @@ -1051,7 +1051,7 @@ } }, "CheckServerNameAvailabilityResult": { - "description": "The checking result of server name availibility.", + "description": "The checking result of server name availability.", "type": "object", "properties": { "nameAvailable": { diff --git a/specification/analysisservices/resource-manager/Microsoft.AnalysisServices/stable/2016-05-16/analysisservices.json b/specification/analysisservices/resource-manager/Microsoft.AnalysisServices/stable/2016-05-16/analysisservices.json index 29d41fd3d068..2c96289d2824 100644 --- a/specification/analysisservices/resource-manager/Microsoft.AnalysisServices/stable/2016-05-16/analysisservices.json +++ b/specification/analysisservices/resource-manager/Microsoft.AnalysisServices/stable/2016-05-16/analysisservices.json @@ -197,7 +197,7 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AnalysisServices/servers/{serverName}/suspend": { "post": { - "description": "Supends operation of the specified Analysis Services server instance.", + "description": "Suspends operation of the specified Analysis Services server instance.", "tags": [ "Servers" ], "operationId": "Servers_Suspend", "parameters": [ @@ -732,7 +732,7 @@ } }, "CheckServerNameAvailabilityResult": { - "description": "The checking result of server name availibility.", + "description": "The checking result of server name availability.", "type": "object", "properties": { "nameAvailable": { diff --git a/specification/analysisservices/resource-manager/Microsoft.AnalysisServices/stable/2017-07-14/analysisservices.json b/specification/analysisservices/resource-manager/Microsoft.AnalysisServices/stable/2017-07-14/analysisservices.json index 27e15e5ff448..1aa36ddb5c99 100644 --- a/specification/analysisservices/resource-manager/Microsoft.AnalysisServices/stable/2017-07-14/analysisservices.json +++ b/specification/analysisservices/resource-manager/Microsoft.AnalysisServices/stable/2017-07-14/analysisservices.json @@ -197,7 +197,7 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AnalysisServices/servers/{serverName}/suspend": { "post": { - "description": "Supends operation of the specified Analysis Services server instance.", + "description": "Suspends operation of the specified Analysis Services server instance.", "tags": [ "Servers" ], "operationId": "Servers_Suspend", "parameters": [ @@ -874,7 +874,7 @@ } }, "CheckServerNameAvailabilityResult": { - "description": "The checking result of server name availibility.", + "description": "The checking result of server name availability.", "type": "object", "properties": { "nameAvailable": { diff --git a/specification/analysisservices/resource-manager/Microsoft.AnalysisServices/stable/2017-08-01/analysisservices.json b/specification/analysisservices/resource-manager/Microsoft.AnalysisServices/stable/2017-08-01/analysisservices.json index 966075c22cff..3a55ee7db338 100644 --- a/specification/analysisservices/resource-manager/Microsoft.AnalysisServices/stable/2017-08-01/analysisservices.json +++ b/specification/analysisservices/resource-manager/Microsoft.AnalysisServices/stable/2017-08-01/analysisservices.json @@ -209,7 +209,7 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AnalysisServices/servers/{serverName}/suspend": { "post": { - "description": "Supends operation of the specified Analysis Services server instance.", + "description": "Suspends operation of the specified Analysis Services server instance.", "x-ms-examples": { "Suspend a server.": { "$ref": "./examples/suspendServer.json" } }, @@ -949,7 +949,7 @@ }, "enablePowerBIService": { "type": "string", - "description": "The indicator of enableing PBI service." + "description": "The indicator of enabling PBI service." } } }, @@ -1051,7 +1051,7 @@ } }, "CheckServerNameAvailabilityResult": { - "description": "The checking result of server name availibility.", + "description": "The checking result of server name availability.", "type": "object", "properties": { "nameAvailable": { diff --git a/specification/apimanagement/control-plane/Microsoft.ApiManagement/preview/2017-03-01/apimbackends.json b/specification/apimanagement/control-plane/Microsoft.ApiManagement/preview/2017-03-01/apimbackends.json index 1e1cd26264b2..ca7ca760ef2d 100644 --- a/specification/apimanagement/control-plane/Microsoft.ApiManagement/preview/2017-03-01/apimbackends.json +++ b/specification/apimanagement/control-plane/Microsoft.ApiManagement/preview/2017-03-01/apimbackends.json @@ -459,7 +459,7 @@ "type": "string" }, "maxPartitionResolutionRetries": { - "description": "Maximum number of retries while attempting resolve the parition.", + "description": "Maximum number of retries while attempting resolve the partition.", "format": "int32", "type": "integer" }, diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/apimapis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/apimapis.json index 89326eeb3b1f..73019ac93c17 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/apimapis.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/apimapis.json @@ -2645,6 +2645,65 @@ } } }, + "patch": { + "tags": [ + "ApiIssues" + ], + "operationId": "ApiIssue_Update", + "description": "Updates an existing issue for an API.", + "x-ms-examples": { + "ApiManagementUpdateApiIssue": { + "$ref": "./examples/ApiManagementUpdateApiIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/ApiIdParameter" + }, + { + "$ref": "#/parameters/IssueIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IssueUpdateContract" + }, + "description": "Update parameters." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "description": "ETag of the Issue Entity. ETag should match the current entity state from the header response of the GET request or it should be * for unconditional update.", + "type": "string" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The Issue was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, "delete": { "tags": [ "ApiIssues" @@ -4341,6 +4400,16 @@ ], "description": "Issue Contract details." }, + "IssueUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IssueUpdateContractProperties", + "description": "Issue entity Update contract properties." + } + }, + "description": "Issue update Parameters." + }, "IssueContractProperties": { "properties": { "title": { @@ -4351,6 +4420,47 @@ "type": "string", "description": "Text describing the issue." }, + "userId": { + "type": "string", + "description": "A resource identifier for the user created the issue." + } + }, + "required": [ + "title", + "description", + "userId" + ], + "allOf": [ + { + "$ref": "#/definitions/IssueContractBaseProperties" + } + ], + "description": "Issue contract Properties." + }, + "IssueUpdateContractProperties": { + "properties": { + "title": { + "type": "string", + "description": "The issue title." + }, + "description": { + "type": "string", + "description": "Text describing the issue." + }, + "userId": { + "type": "string", + "description": "A resource identifier for the user created the issue." + } + }, + "allOf": [ + { + "$ref": "#/definitions/IssueContractBaseProperties" + } + ], + "description": "Issue contract Update Properties." + }, + "IssueContractBaseProperties": { + "properties": { "createdDate": { "type": "string", "format": "date-time", @@ -4393,21 +4503,12 @@ ] } }, - "userId": { - "type": "string", - "description": "A resource identifier for the user created the issue." - }, "apiId": { "type": "string", "description": "A resource identifier for the API the issue was created for." } }, - "required": [ - "title", - "description", - "userId" - ], - "description": "Issue contract Properties." + "description": "Issue contract Base Properties." }, "IssueCommentCollection": { "properties": { diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/apimbackends.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/apimbackends.json index 442b78e9219d..035ce4e7e2d8 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/apimbackends.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/apimbackends.json @@ -591,7 +591,7 @@ "type": "string" }, "maxPartitionResolutionRetries": { - "description": "Maximum number of retries while attempting resolve the parition.", + "description": "Maximum number of retries while attempting resolve the partition.", "format": "int32", "type": "integer" }, @@ -748,7 +748,7 @@ "after": { "type": "string", "format": "duration", - "description": "Duration in ISO8601 format after which reconnect will be initiated. Minimum duration of the Reconect is PT2M." + "description": "Duration in ISO8601 format after which reconnect will be initiated. Minimum duration of the Reconnect is PT2M." } }, "description": "Properties to control reconnect requests." diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/apimusers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/apimusers.json index 2fbd739e4896..8e7367a34444 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/apimusers.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/apimusers.json @@ -34,6 +34,48 @@ } }, "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/identity": { + "get": { + "tags": [ + "Users" + ], + "operationId": "User_GetIdentity", + "description": "Returns calling user identity information.", + "x-ms-examples": { + "ApiManagementListUsers": { + "$ref": "./examples/ApiManagementGetUserIdentity.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Current user APIM id.", + "schema": { + "$ref": "#/definitions/CurrentUserIdentity" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users": { "get": { "tags": [ @@ -822,7 +864,6 @@ "description": "Optional note about a user set by the administrator." }, "identities": { - "readOnly": true, "type": "array", "items": { "$ref": "#/definitions/UserIdentityContract" @@ -943,6 +984,14 @@ } ], "description": "Parameters supplied to the Update User operation." + }, + "CurrentUserIdentity": { + "properties": { + "id": { + "type": "string", + "description": "API Management service user id." + } + } } }, "parameters": { diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/examples/ApiManagementGetUserIdentity.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/examples/ApiManagementGetUserIdentity.json new file mode 100644 index 000000000000..4d5903dd3554 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/examples/ApiManagementGetUserIdentity.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2018-06-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "1" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/examples/ApiManagementUpdateApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/examples/ApiManagementUpdateApiIssue.json new file mode 100644 index 000000000000..36f3f70fe42c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/examples/ApiManagementUpdateApiIssue.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-06-01-preview", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "parameters": { + "properties": { + "state": "closed" + } + } + }, + "responses": { + "204": { } + } + } \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimbackends.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimbackends.json index 499f708cade8..f36d7725f6db 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimbackends.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2017-03-01/apimbackends.json @@ -593,7 +593,7 @@ "type": "string" }, "maxPartitionResolutionRetries": { - "description": "Maximum number of retries while attempting resolve the parition.", + "description": "Maximum number of retries while attempting resolve the partition.", "format": "int32", "type": "integer" }, diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimanagement.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimanagement.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimanagement.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimanagement.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimapis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimapis.json similarity index 98% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimapis.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimapis.json index bdedca08bd5a..16286cb719e9 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimapis.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimapis.json @@ -2857,6 +2857,65 @@ } } }, + "patch": { + "tags": [ + "ApiIssues" + ], + "operationId": "ApiIssue_Update", + "description": "Updates an existing issue for an API.", + "x-ms-examples": { + "ApiManagementUpdateApiIssue": { + "$ref": "./examples/ApiManagementUpdateApiIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/ApiIdParameter" + }, + { + "$ref": "#/parameters/IssueIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IssueUpdateContract" + }, + "description": "Update parameters." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "description": "ETag of the Issue Entity. ETag should match the current entity state from the header response of the GET request or it should be * for unconditional update.", + "type": "string" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The Issue was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, "delete": { "tags": [ "ApiIssues" @@ -4549,6 +4608,16 @@ ], "description": "Issue Contract details." }, + "IssueUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IssueUpdateContractProperties", + "description": "Issue entity Update contract properties." + } + }, + "description": "Issue update Parameters." + }, "IssueContractProperties": { "properties": { "title": { @@ -4559,6 +4628,47 @@ "type": "string", "description": "Text describing the issue." }, + "userId": { + "type": "string", + "description": "A resource identifier for the user created the issue." + } + }, + "required": [ + "title", + "description", + "userId" + ], + "allOf": [ + { + "$ref": "#/definitions/IssueContractBaseProperties" + } + ], + "description": "Issue contract Properties." + }, + "IssueUpdateContractProperties": { + "properties": { + "title": { + "type": "string", + "description": "The issue title." + }, + "description": { + "type": "string", + "description": "Text describing the issue." + }, + "userId": { + "type": "string", + "description": "A resource identifier for the user created the issue." + } + }, + "allOf": [ + { + "$ref": "#/definitions/IssueContractBaseProperties" + } + ], + "description": "Issue contract Update Properties." + }, + "IssueContractBaseProperties": { + "properties": { "createdDate": { "type": "string", "format": "date-time", @@ -4601,21 +4711,12 @@ ] } }, - "userId": { - "type": "string", - "description": "A resource identifier for the user created the issue." - }, "apiId": { "type": "string", "description": "A resource identifier for the API the issue was created for." } }, - "required": [ - "title", - "description", - "userId" - ], - "description": "Issue contract Properties." + "description": "Issue contract Base Properties." }, "IssueCommentCollection": { "properties": { diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimauthorizationservers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimauthorizationservers.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimauthorizationservers.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimauthorizationservers.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimbackends.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimbackends.json similarity index 99% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimbackends.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimbackends.json index 10c59fd61c8e..12a0ea9ff041 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimbackends.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimbackends.json @@ -591,7 +591,7 @@ "type": "string" }, "maxPartitionResolutionRetries": { - "description": "Maximum number of retries while attempting resolve the parition.", + "description": "Maximum number of retries while attempting resolve the partition.", "format": "int32", "type": "integer" }, diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimcertificates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimcertificates.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimcertificates.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimcertificates.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimdeployment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimdeployment.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimdeployment.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimdeployment.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimdiagnostics.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimdiagnostics.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimdiagnostics.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimdiagnostics.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimemailtemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimemailtemplate.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimemailtemplate.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimemailtemplate.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimgroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimgroups.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimgroups.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimgroups.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimidentityprovider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimidentityprovider.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimidentityprovider.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimidentityprovider.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimissues.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimissues.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimissues.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimissues.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimloggers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimloggers.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimloggers.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimloggers.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimnetworkstatus.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimnetworkstatus.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimnetworkstatus.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimnetworkstatus.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimnotifications.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimnotifications.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimnotifications.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimnotifications.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimopenidconnectproviders.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimopenidconnectproviders.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimopenidconnectproviders.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimopenidconnectproviders.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimportalsettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimportalsettings.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimportalsettings.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimportalsettings.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimproducts.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimproducts.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimproducts.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimproducts.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimproperties.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimproperties.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimproperties.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimproperties.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimquotas.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimquotas.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimquotas.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimquotas.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimreports.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimreports.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimreports.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimreports.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimsubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimsubscriptions.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimsubscriptions.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimsubscriptions.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimtagresources.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimtagresources.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimtagresources.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimtagresources.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimtags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimtags.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimtags.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimtags.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimtenant.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimtenant.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimtenant.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimtenant.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimusers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimusers.json similarity index 95% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimusers.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimusers.json index e52d1a35cfde..2413c3b71f61 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimusers.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimusers.json @@ -34,6 +34,48 @@ } }, "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/identity": { + "get": { + "tags": [ + "Users" + ], + "operationId": "User_GetIdentity", + "description": "Returns calling user identity information.", + "x-ms-examples": { + "ApiManagementListUsers": { + "$ref": "./examples/ApiManagementGetUserIdentity.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Current user APIM id.", + "schema": { + "$ref": "#/definitions/CurrentUserIdentity" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users": { "get": { "tags": [ @@ -822,7 +864,6 @@ "description": "Optional note about a user set by the administrator." }, "identities": { - "readOnly": true, "type": "array", "items": { "$ref": "#/definitions/UserIdentityContract" @@ -943,6 +984,14 @@ } ], "description": "Parameters supplied to the Update User operation." + }, + "CurrentUserIdentity": { + "properties": { + "id": { + "type": "string", + "description": "API Management service user id." + } + } } }, "parameters": { diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimversionsets.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimversionsets.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/apimversionsets.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/apimversionsets.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementApplyNetworkConfigurationUpdates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementApplyNetworkConfigurationUpdates.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementApplyNetworkConfigurationUpdates.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementApplyNetworkConfigurationUpdates.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementBackendReconnect.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementBackendReconnect.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementBackendReconnect.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementBackendReconnect.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateAILogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateAILogger.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateAILogger.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateAILogger.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApi.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApi.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApi.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiDiagnostic.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiDiagnostic.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiDiagnostic.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiDiagnosticLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiDiagnosticLogger.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiDiagnosticLogger.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiDiagnosticLogger.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiIssue.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiIssue.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiIssue.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiIssueAttachment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiIssueAttachment.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiIssueAttachment.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiIssueAttachment.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiIssueComment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiIssueComment.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiIssueComment.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiIssueComment.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiOperation.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiOperation.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiOperation.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiOperationPolicy.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiOperationPolicy.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiOperationPolicy.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiPolicy.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiPolicy.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiPolicy.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiPolicyNonXmlEncoded.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiPolicyNonXmlEncoded.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiPolicyNonXmlEncoded.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiPolicyNonXmlEncoded.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiRelease.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiRelease.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiRelease.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiRevision.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiRevision.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiRevision.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiRevision.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiSchema.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiSchema.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiSchema.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiTag.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiTag.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiTag.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiTagDescription.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiTagDescription.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiTagDescription.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiUsingSwaggerImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiUsingSwaggerImport.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiUsingSwaggerImport.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiUsingSwaggerImport.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiUsingWadlImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiUsingWadlImport.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiUsingWadlImport.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiUsingWadlImport.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiVersionSet.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiVersionSet.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiVersionSet.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiWithOpenIdConnect.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiWithOpenIdConnect.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateApiWithOpenIdConnect.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateApiWithOpenIdConnect.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateAuthorizationServer.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateAuthorizationServer.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateAuthorizationServer.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateBackendProxyBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateBackendProxyBackend.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateBackendProxyBackend.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateBackendProxyBackend.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateBackendServiceFabric.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateBackendServiceFabric.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateBackendServiceFabric.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateBackendServiceFabric.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateBackup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateBackup.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateBackup.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateBackup.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateCertificate.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateCertificate.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateCertificate.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateDiagnostic.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateDiagnostic.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateDiagnostic.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateDiagnosticLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateDiagnosticLogger.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateDiagnosticLogger.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateDiagnosticLogger.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateEHLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateEHLogger.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateEHLogger.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateEHLogger.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateEmailTemplate.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateEmailTemplate.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateEmailTemplate.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateGroup.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateGroup.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateGroup.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateGroupExternal.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateGroupExternal.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateGroupExternal.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateGroupExternal.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateGroupUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateGroupUser.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateGroupUser.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateGroupUser.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateIdentityProvider.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateIdentityProvider.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateIdentityProvider.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateOpenIdConnectProvider.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateOpenIdConnectProvider.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateOpenIdConnectProvider.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateOperationTag.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateOperationTag.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateOperationTag.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreatePolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreatePolicy.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreatePolicy.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreatePolicy.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateProductApi.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductApi.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateProductApi.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductBasic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateProductBasic.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductBasic.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateProductBasic.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateProductGroup.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductGroup.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateProductGroup.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateProductPolicy.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductPolicy.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateProductPolicy.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateProductTag.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProductTag.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateProductTag.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProperty.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateProperty.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateProperty.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateProperty.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateRecipientEmail.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateRecipientEmail.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateRecipientEmail.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateRecipientEmail.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateRecipientUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateRecipientUser.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateRecipientUser.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateRecipientUser.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateService.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateService.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateService.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateServiceHavingMsi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateServiceHavingMsi.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateServiceHavingMsi.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateServiceHavingMsi.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateServiceWithSystemCertificates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateServiceWithSystemCertificates.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateServiceWithSystemCertificates.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateServiceWithSystemCertificates.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateSubscription.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateSubscription.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateSubscription.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateTag.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateTag.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateTag.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateUserBasic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateUserBasic.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementCreateUserBasic.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementCreateUserBasic.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApi.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApi.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApi.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiDiagnostic.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiDiagnostic.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiDiagnostic.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiDiagnosticLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiDiagnosticLogger.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiDiagnosticLogger.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiDiagnosticLogger.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiIssue.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiIssue.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiIssue.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiIssueAttachment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiIssueAttachment.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiIssueAttachment.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiIssueAttachment.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiIssueComment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiIssueComment.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiIssueComment.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiIssueComment.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiOperation.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiOperation.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiOperation.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiPolicy.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiPolicy.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiPolicy.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiRelease.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiRelease.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiRelease.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiSchema.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiSchema.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiSchema.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiTag.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiTag.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiTag.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiTagDescription.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiTagDescription.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiTagDescription.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiVersionSet.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteApiVersionSet.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteApiVersionSet.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteAuthorizationServer.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteAuthorizationServer.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteAuthorizationServer.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteBackend.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteBackend.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteBackend.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteCertificate.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteCertificate.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteCertificate.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteDiagnostic.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteDiagnostic.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteDiagnostic.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteDiagnosticLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteDiagnosticLogger.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteDiagnosticLogger.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteDiagnosticLogger.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteEmailTemplate.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteEmailTemplate.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteEmailTemplate.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteGroup.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteGroup.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteGroup.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteGroupUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteGroupUser.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteGroupUser.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteGroupUser.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteIdentityProvider.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteIdentityProvider.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteIdentityProvider.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteLogger.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteLogger.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteLogger.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteNotificationRecipientEmail.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteNotificationRecipientEmail.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteNotificationRecipientEmail.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteNotificationRecipientEmail.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteNotificationRecipientUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteNotificationRecipientUser.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteNotificationRecipientUser.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteNotificationRecipientUser.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteOpenIdConnectProvider.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteOpenIdConnectProvider.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteOpenIdConnectProvider.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteOperationPolicy.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteOperationPolicy.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteOperationPolicy.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteOperationTag.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteOperationTag.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteOperationTag.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeletePolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeletePolicy.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeletePolicy.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeletePolicy.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteProduct.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProduct.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteProduct.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteProductApi.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductApi.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteProductApi.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteProductGroup.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductGroup.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteProductGroup.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteProductPolicy.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductPolicy.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteProductPolicy.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteProductTag.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProductTag.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteProductTag.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProperty.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteProperty.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteProperty.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteProperty.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteSubscription.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteSubscription.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteSubscription.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteTag.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteTag.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteTag.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteUser.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementDeleteUser.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementDeleteUser.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiContract.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiContract.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiContract.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiContract.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiDiagnostic.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiDiagnostic.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiDiagnostic.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiExportInOpenApi2dot0.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiExportInOpenApi2dot0.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiExportInOpenApi2dot0.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiExportInOpenApi2dot0.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiIssue.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiIssue.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiIssue.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiIssueAttachment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiIssueAttachment.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiIssueAttachment.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiIssueAttachment.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiIssueComment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiIssueComment.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiIssueComment.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiIssueComment.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiOperation.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiOperation.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiOperation.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiOperationPolicy.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiOperationPolicy.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiOperationPolicy.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiPolicy.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiPolicy.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiPolicy.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiRelease.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiRelease.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiRelease.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiRevision.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiRevision.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiRevision.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiRevision.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiSchema.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiSchema.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiSchema.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiTag.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiTag.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiTag.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiTagDescription.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiTagDescription.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiTagDescription.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiVersionSet.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetApiVersionSet.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetApiVersionSet.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetAuthorizationServer.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetAuthorizationServer.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetAuthorizationServer.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetBackend.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetBackend.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetBackend.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetCertificate.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetCertificate.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetCertificate.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetDiagnostic.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetDiagnostic.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetDiagnostic.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetEmailTemplate.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetEmailTemplate.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetEmailTemplate.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetGroup.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetGroup.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetGroup.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetIdentityProvider.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetIdentityProvider.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetIdentityProvider.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetLogger.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetLogger.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetLogger.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetNotification.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetNotification.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetNotification.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetNotification.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetOpenIdConnectProvider.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetOpenIdConnectProvider.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetOpenIdConnectProvider.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetOperationTag.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetOperationTag.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetOperationTag.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetPolicy.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetPolicy.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetPolicy.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetProduct.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProduct.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetProduct.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetProductPolicy.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProductPolicy.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetProductPolicy.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetProductTag.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProductTag.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetProductTag.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProductsForApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetProductsForApi.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProductsForApi.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetProductsForApi.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProperty.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetProperty.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetProperty.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetProperty.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetQuotaCounteryKeys.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetQuotaCounteryKeys.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetQuotaCounteryKeys.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetQuotaCounteryKeys.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetQuotaCounteryKeysByQuotaPeriod.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetQuotaCounteryKeysByQuotaPeriod.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetQuotaCounteryKeysByQuotaPeriod.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetQuotaCounteryKeysByQuotaPeriod.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetReportsByApi.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByApi.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetReportsByApi.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByGeo.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetReportsByGeo.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByGeo.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetReportsByGeo.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetReportsByOperation.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByOperation.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetReportsByOperation.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetReportsByProduct.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByProduct.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetReportsByProduct.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByRequest.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetReportsByRequest.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByRequest.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetReportsByRequest.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsBySubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetReportsBySubscription.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsBySubscription.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetReportsBySubscription.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByTime.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetReportsByTime.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByTime.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetReportsByTime.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetReportsByUser.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetReportsByUser.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetReportsByUser.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetSubscription.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetSubscription.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetSubscription.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetTag.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTag.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetTag.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagDescriptionsForApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetTagDescriptionsForApi.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagDescriptionsForApi.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetTagDescriptionsForApi.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagsForApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetTagsForApi.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagsForApi.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetTagsForApi.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagsForOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetTagsForOperation.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagsForOperation.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetTagsForOperation.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagsForProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetTagsForProduct.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTagsForProduct.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetTagsForProduct.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTenantAccess.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetTenantAccess.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetTenantAccess.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetTenantAccess.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetUser.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementGetUser.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetUser.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetUserIdentity.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetUserIdentity.json new file mode 100644 index 000000000000..e740bc2d0bf9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementGetUserIdentity.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2018-01-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "1" + } + } + } +} \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApi.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApi.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApi.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiDiagnostic.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiDiagnostic.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiDiagnostic.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiDiagnosticLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiDiagnosticLogger.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiDiagnosticLogger.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiDiagnosticLogger.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiIssue.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiIssue.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiIssue.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiIssueAttachment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiIssueAttachment.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiIssueAttachment.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiIssueAttachment.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiIssueComment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiIssueComment.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiIssueComment.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiIssueComment.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiOperation.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiOperation.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiOperation.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiOperationPolicy.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiOperationPolicy.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiOperationPolicy.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiPolicy.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiPolicy.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiPolicy.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiRelease.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiRelease.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiRelease.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiSchema.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiSchema.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiSchema.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiTag.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiTag.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiTag.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiTagDescription.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiTagDescription.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiTagDescription.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiVersionSet.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadApiVersionSet.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadApiVersionSet.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadAuthorizationServer.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadAuthorizationServer.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadAuthorizationServer.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadBackend.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadBackend.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadBackend.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadCertificate.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadCertificate.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadCertificate.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadDelegationSettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadDelegationSettings.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadDelegationSettings.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadDelegationSettings.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadDiagnostic.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadDiagnostic.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadDiagnostic.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadDiagnosticLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadDiagnosticLogger.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadDiagnosticLogger.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadDiagnosticLogger.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadEmailTemplate.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadEmailTemplate.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadEmailTemplate.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadGroup.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadGroup.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadGroup.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadGroupUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadGroupUser.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadGroupUser.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadGroupUser.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadIdentityProvider.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadIdentityProvider.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadIdentityProvider.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadLogger.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadLogger.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadLogger.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadNotificationRecipientEmail.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadNotificationRecipientEmail.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadNotificationRecipientEmail.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadNotificationRecipientEmail.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadNotificationRecipientUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadNotificationRecipientUser.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadNotificationRecipientUser.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadNotificationRecipientUser.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadOpenIdConnectProvider.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadOpenIdConnectProvider.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadOpenIdConnectProvider.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadOperationTag.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadOperationTag.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadOperationTag.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadPolicy.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadPolicy.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadPolicy.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadProduct.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProduct.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadProduct.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadProductApi.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductApi.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadProductApi.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadProductGroup.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductGroup.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadProductGroup.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadProductPolicy.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductPolicy.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadProductPolicy.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadProductTag.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProductTag.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadProductTag.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProperty.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadProperty.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadProperty.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadProperty.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadSignInSettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadSignInSettings.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadSignInSettings.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadSignInSettings.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadSignUpSettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadSignUpSettings.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadSignUpSettings.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadSignUpSettings.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadSubscription.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadSubscription.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadSubscription.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadTag.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadTag.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadTag.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadUser.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementHeadUser.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementHeadUser.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiDiagnosticLoggers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiDiagnosticLoggers.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiDiagnosticLoggers.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiDiagnosticLoggers.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiDiagnostics.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiDiagnostics.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiDiagnostics.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiDiagnostics.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiIssueAttachments.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiIssueAttachments.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiIssueAttachments.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiIssueAttachments.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiIssueComments.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiIssueComments.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiIssueComments.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiIssueComments.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiIssues.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiIssues.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiIssues.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiIssues.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiOperationPolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiOperationPolicies.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiOperationPolicies.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiOperationPolicies.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiOperations.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiOperations.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiOperations.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiOperations.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiPolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiPolicies.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiPolicies.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiPolicies.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiReleases.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiReleases.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiReleases.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiReleases.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiRevisions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiRevisions.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiRevisions.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiRevisions.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiSchemas.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiSchemas.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiSchemas.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiSchemas.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiVersionSets.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiVersionSets.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApiVersionSets.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApiVersionSets.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApis.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApis.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApis.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApisByTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApisByTags.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListApisByTags.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListApisByTags.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListAuthorizationServers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListAuthorizationServers.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListAuthorizationServers.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListAuthorizationServers.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListBackends.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListBackends.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListBackends.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListBackends.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListCertificates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListCertificates.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListCertificates.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListCertificates.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListDiagnosticLoggers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListDiagnosticLoggers.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListDiagnosticLoggers.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListDiagnosticLoggers.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListDiagnostics.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListDiagnostics.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListDiagnostics.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListDiagnostics.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListEmailTemplates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListEmailTemplates.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListEmailTemplates.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListEmailTemplates.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListGroupUsers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListGroupUsers.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListGroupUsers.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListGroupUsers.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListGroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListGroups.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListGroups.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListGroups.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListIdentityProviders.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListIdentityProviders.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListIdentityProviders.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListIdentityProviders.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListIssues.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListIssues.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListIssues.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListIssues.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListLoggers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListLoggers.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListLoggers.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListLoggers.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListNotificationRecipientEmail.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListNotificationRecipientEmail.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListNotificationRecipientEmail.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListNotificationRecipientEmail.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListNotificationRecipientUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListNotificationRecipientUser.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListNotificationRecipientUser.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListNotificationRecipientUser.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListNotifications.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListNotifications.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListNotifications.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListNotifications.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListOpenIdConnectProviders.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListOpenIdConnectProviders.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListOpenIdConnectProviders.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListOpenIdConnectProviders.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListOperations.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListOperations.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListOperations.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListOperations.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListOperationsByTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListOperationsByTags.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListOperationsByTags.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListOperationsByTags.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListPolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListPolicies.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListPolicies.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListPolicies.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListPolicySnippets.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListPolicySnippets.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListPolicySnippets.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListPolicySnippets.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductApis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListProductApis.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductApis.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListProductApis.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductGroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListProductGroups.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductGroups.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListProductGroups.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListProductPolicy.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductPolicy.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListProductPolicy.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductSubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListProductSubscriptions.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProductSubscriptions.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListProductSubscriptions.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProducts.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListProducts.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProducts.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListProducts.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProperties.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListProperties.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListProperties.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListProperties.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListRegions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListRegions.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListRegions.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListRegions.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListServiceBySubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListServiceBySubscription.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListServiceBySubscription.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListServiceBySubscription.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListSubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListSubscriptions.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListSubscriptions.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListSubscriptions.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListTagResources.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListTagResources.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListTagResources.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListTagResources.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListTags.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListTags.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListTags.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUserGroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListUserGroups.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUserGroups.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListUserGroups.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUserSubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListUserSubscriptions.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUserSubscriptions.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListUserSubscriptions.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUsers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListUsers.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUsers.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListUsers.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUsersIdentities.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListUsersIdentities.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementListUsersIdentities.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementListUsersIdentities.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsGetDelegation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementPortalSettingsGetDelegation.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsGetDelegation.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementPortalSettingsGetDelegation.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsGetSignIn.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementPortalSettingsGetSignIn.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsGetSignIn.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementPortalSettingsGetSignIn.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsGetSignUp.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementPortalSettingsGetSignUp.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsGetSignUp.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementPortalSettingsGetSignUp.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsPutDelegation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementPortalSettingsPutDelegation.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsPutDelegation.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementPortalSettingsPutDelegation.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsPutSignIn.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementPortalSettingsPutSignIn.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsPutSignIn.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementPortalSettingsPutSignIn.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsPutSignUp.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementPortalSettingsPutSignUp.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsPutSignUp.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementPortalSettingsPutSignUp.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsUpdateDelegation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementPortalSettingsUpdateDelegation.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsUpdateDelegation.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementPortalSettingsUpdateDelegation.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsUpdateSignIn.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementPortalSettingsUpdateSignIn.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsUpdateSignIn.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementPortalSettingsUpdateSignIn.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsUpdateSignUp.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementPortalSettingsUpdateSignUp.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementPortalSettingsUpdateSignUp.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementPortalSettingsUpdateSignUp.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementRestoreService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementRestoreService.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementRestoreService.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementRestoreService.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceCheckNameAvailability.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceCheckNameAvailability.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceCheckNameAvailability.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceCheckNameAvailability.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceDeleteService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceDeleteService.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceDeleteService.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceDeleteService.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetMultiRegionInternalVnet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceGetMultiRegionInternalVnet.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetMultiRegionInternalVnet.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceGetMultiRegionInternalVnet.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetNetworkStatus.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceGetNetworkStatus.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetNetworkStatus.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceGetNetworkStatus.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetNetworkStatusByLocation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceGetNetworkStatusByLocation.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetNetworkStatusByLocation.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceGetNetworkStatusByLocation.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceGetService.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetService.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceGetService.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetServiceHavingMsi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceGetServiceHavingMsi.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetServiceHavingMsi.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceGetServiceHavingMsi.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetSsoToken.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceGetSsoToken.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceGetSsoToken.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceGetSsoToken.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceUpdateHostName.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceUpdateHostName.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceUpdateHostName.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceUpdateHostName.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceUploadProxyCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceUploadProxyCertificate.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementServiceUploadProxyCertificate.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementServiceUploadProxyCertificate.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementSubscriptionRegenerateKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementSubscriptionRegenerateKey.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementSubscriptionRegenerateKey.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementSubscriptionRegenerateKey.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantAccessRegenerateKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementTenantAccessRegenerateKey.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantAccessRegenerateKey.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementTenantAccessRegenerateKey.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantAccessSyncState.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementTenantAccessSyncState.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantAccessSyncState.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementTenantAccessSyncState.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantConfigurationDeploy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementTenantConfigurationDeploy.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantConfigurationDeploy.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementTenantConfigurationDeploy.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantConfigurationSave.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementTenantConfigurationSave.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantConfigurationSave.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementTenantConfigurationSave.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantConfigurationValidate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementTenantConfigurationValidate.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementTenantConfigurationValidate.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementTenantConfigurationValidate.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateApi.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApi.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateApi.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateApiDiagnostic.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiDiagnostic.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateApiDiagnostic.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateApiIssue.json new file mode 100644 index 000000000000..03cfa07b7ce3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateApiIssue.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2018-01-01", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "parameters": { + "properties": { + "state": "closed" + } + } + }, + "responses": { + "204": { } + } + } \ No newline at end of file diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateApiOperation.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiOperation.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateApiOperation.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateApiRelease.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiRelease.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateApiRelease.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateApiVersionSet.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateApiVersionSet.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateApiVersionSet.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateAuthorizationServer.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateAuthorizationServer.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateAuthorizationServer.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateBackend.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateBackend.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateBackend.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateDiagnostic.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateDiagnostic.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateDiagnostic.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateEmailTemplate.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateEmailTemplate.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateEmailTemplate.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateGroup.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateGroup.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateGroup.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateIdentityProvider.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateIdentityProvider.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateIdentityProvider.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateLogger.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateLogger.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateLogger.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateOpenIdConnectProvider.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateOpenIdConnectProvider.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateOpenIdConnectProvider.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateProductBasic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateProductBasic.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateProductBasic.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateProductBasic.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateProperty.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateProperty.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateProperty.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateProperty.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateQuotaCounterKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateQuotaCounterKey.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateQuotaCounterKey.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateQuotaCounterKey.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateServiceDisableTls10.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateServiceDisableTls10.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateServiceDisableTls10.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateServiceDisableTls10.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateServicePublisherDetails.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateServicePublisherDetails.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateServicePublisherDetails.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateServicePublisherDetails.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateSubscription.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateSubscription.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateSubscription.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateTag.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateTag.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateTag.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateTenantAccess.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateTenantAccess.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateTenantAccess.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateTenantAccess.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateUserBasic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateUserBasic.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUpdateUserBasic.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUpdateUserBasic.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUsersGenerateSsoUrl.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUsersGenerateSsoUrl.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUsersGenerateSsoUrl.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUsersGenerateSsoUrl.json diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUsersGetToken.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUsersGetToken.json similarity index 100% rename from specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-01-01/examples/ApiManagementUsersGetToken.json rename to specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2018-01-01/examples/ApiManagementUsersGetToken.json diff --git a/specification/apimanagement/resource-manager/readme.go.md b/specification/apimanagement/resource-manager/readme.go.md index d569b68cb750..c2745e3fdc61 100644 --- a/specification/apimanagement/resource-manager/readme.go.md +++ b/specification/apimanagement/resource-manager/readme.go.md @@ -35,7 +35,7 @@ These settings apply only when `--tag=package-2018-01 --go` is specified on the Please also specify `--go-sdk-folder=`. ``` yaml $(tag) == 'package-2018-01' && $(go) -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2018-01-01/$(namespace) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2018-01-01/$(namespace) ``` ### Tag: package-2017-03 and go diff --git a/specification/apimanagement/resource-manager/readme.md b/specification/apimanagement/resource-manager/readme.md index 9ac8d31299df..c6417823ac04 100644 --- a/specification/apimanagement/resource-manager/readme.md +++ b/specification/apimanagement/resource-manager/readme.md @@ -81,31 +81,31 @@ These settings apply only when `--tag=package-2018-01` is specified on the comma ``` yaml $(tag) == 'package-2018-01' input-file: -- Microsoft.ApiManagement/preview/2018-01-01/apimanagement.json -- Microsoft.ApiManagement/preview/2018-01-01/apimapis.json -- Microsoft.ApiManagement/preview/2018-01-01/apimauthorizationservers.json -- Microsoft.ApiManagement/preview/2018-01-01/apimbackends.json -- Microsoft.ApiManagement/preview/2018-01-01/apimcertificates.json -- Microsoft.ApiManagement/preview/2018-01-01/apimdeployment.json -- Microsoft.ApiManagement/preview/2018-01-01/apimdiagnostics.json -- Microsoft.ApiManagement/preview/2018-01-01/apimemailtemplate.json -- Microsoft.ApiManagement/preview/2018-01-01/apimgroups.json -- Microsoft.ApiManagement/preview/2018-01-01/apimidentityprovider.json -- Microsoft.ApiManagement/preview/2018-01-01/apimloggers.json -- Microsoft.ApiManagement/preview/2018-01-01/apimnotifications.json -- Microsoft.ApiManagement/preview/2018-01-01/apimnetworkstatus.json -- Microsoft.ApiManagement/preview/2018-01-01/apimopenidconnectproviders.json -- Microsoft.ApiManagement/preview/2018-01-01/apimportalsettings.json -- Microsoft.ApiManagement/preview/2018-01-01/apimproducts.json -- Microsoft.ApiManagement/preview/2018-01-01/apimproperties.json -- Microsoft.ApiManagement/preview/2018-01-01/apimquotas.json -- Microsoft.ApiManagement/preview/2018-01-01/apimreports.json -- Microsoft.ApiManagement/preview/2018-01-01/apimsubscriptions.json -- Microsoft.ApiManagement/preview/2018-01-01/apimtagresources.json -- Microsoft.ApiManagement/preview/2018-01-01/apimtags.json -- Microsoft.ApiManagement/preview/2018-01-01/apimtenant.json -- Microsoft.ApiManagement/preview/2018-01-01/apimusers.json -- Microsoft.ApiManagement/preview/2018-01-01/apimversionsets.json +- Microsoft.ApiManagement/stable/2018-01-01/apimanagement.json +- Microsoft.ApiManagement/stable/2018-01-01/apimapis.json +- Microsoft.ApiManagement/stable/2018-01-01/apimauthorizationservers.json +- Microsoft.ApiManagement/stable/2018-01-01/apimbackends.json +- Microsoft.ApiManagement/stable/2018-01-01/apimcertificates.json +- Microsoft.ApiManagement/stable/2018-01-01/apimdeployment.json +- Microsoft.ApiManagement/stable/2018-01-01/apimdiagnostics.json +- Microsoft.ApiManagement/stable/2018-01-01/apimemailtemplate.json +- Microsoft.ApiManagement/stable/2018-01-01/apimgroups.json +- Microsoft.ApiManagement/stable/2018-01-01/apimidentityprovider.json +- Microsoft.ApiManagement/stable/2018-01-01/apimloggers.json +- Microsoft.ApiManagement/stable/2018-01-01/apimnotifications.json +- Microsoft.ApiManagement/stable/2018-01-01/apimnetworkstatus.json +- Microsoft.ApiManagement/stable/2018-01-01/apimopenidconnectproviders.json +- Microsoft.ApiManagement/stable/2018-01-01/apimportalsettings.json +- Microsoft.ApiManagement/stable/2018-01-01/apimproducts.json +- Microsoft.ApiManagement/stable/2018-01-01/apimproperties.json +- Microsoft.ApiManagement/stable/2018-01-01/apimquotas.json +- Microsoft.ApiManagement/stable/2018-01-01/apimreports.json +- Microsoft.ApiManagement/stable/2018-01-01/apimsubscriptions.json +- Microsoft.ApiManagement/stable/2018-01-01/apimtagresources.json +- Microsoft.ApiManagement/stable/2018-01-01/apimtags.json +- Microsoft.ApiManagement/stable/2018-01-01/apimtenant.json +- Microsoft.ApiManagement/stable/2018-01-01/apimusers.json +- Microsoft.ApiManagement/stable/2018-01-01/apimversionsets.json ``` ## Suppression diff --git a/specification/applicationinsights/data-plane/microsoft.insights/preview/2018-04-20/examples/metric-get-segmented.json b/specification/applicationinsights/data-plane/microsoft.insights/preview/2018-04-20/examples/metric-get-segmented.json new file mode 100644 index 000000000000..c97ac07326cf --- /dev/null +++ b/specification/applicationinsights/data-plane/microsoft.insights/preview/2018-04-20/examples/metric-get-segmented.json @@ -0,0 +1,149 @@ +{ + "title": "Get intervaled and segmented request count", + "description": "Gets intervaled and segmented metric", + "parameters": { + "subscriptionId": "c512b59c-4005-40e2-b13d-ac29cfb46af4", + "resourceGroupName": "test-rg", + "applicationName": "azure-insights", + "apiVersion": "2018-04-20", + "metricId": "requests%2Fcount", + "timespan": "P2D", + "interval": "P1D", + "segment": [ + "operation/name", + "request/success" + ] + }, + "responses": { + "200": { + "body": { + "value": { + "start": "2018-10-22T10:40:09.065Z", + "end": "2018-10-22T22:40:09.065Z", + "segments": [ + { + "operation/name": "GET Home/Index", + "segments": [ + { + "requests/count": null, + "sum": 156483, + "request/success": false + }, + { + "requests/count": null, + "sum": 3795, + "request/success": true + } + ] + }, + { + "operation/name": "GET /", + "segments": [ + { + "requests/count": null, + "sum": 34168, + "request/success": false + }, + { + "requests/count": null, + "sum": 12, + "request/success": true + } + ] + }, + { + "operation/name": "GET /FabrikamProd/Content/fonts/segoewp-light-webfont.eot", + "segments": [ + { + "requests/count": null, + "sum": 9378, + "request/success": true + } + ] + }, + { + "operation/name": "GET /FabrikamProd/Content/fonts/segoewp-webfont.eot", + "segments": [ + { + "requests/count": null, + "sum": 9370, + "request/success": true + } + ] + }, + { + "operation/name": "GET ServiceTickets/Details", + "segments": [ + { + "requests/count": null, + "sum": 1989, + "request/success": false + }, + { + "requests/count": null, + "sum": 14, + "request/success": true + } + ] + }, + { + "operation/name": "GET ServiceTickets/Index", + "segments": [ + { + "requests/count": null, + "sum": 1991, + "request/success": true + } + ] + }, + { + "operation/name": "GET Employees/Index", + "segments": [ + { + "requests/count": null, + "sum": 1990, + "request/success": true + } + ] + }, + { + "operation/name": "GET ServiceTickets/GetLogEntries", + "segments": [ + { + "requests/count": null, + "sum": 1985, + "request/success": true + } + ] + }, + { + "operation/name": "GET Employees/Details", + "segments": [ + { + "requests/count": null, + "sum": 663, + "request/success": false + }, + { + "requests/count": null, + "sum": 663, + "request/success": true + } + ] + }, + { + "operation/name": "GET Reports/Index", + "segments": [ + { + "requests/count": null, + "sum": 1086, + "request/success": true + } + ] + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/applicationinsights/data-plane/microsoft.insights/preview/2018-04-20/swagger.json b/specification/applicationinsights/data-plane/microsoft.insights/preview/2018-04-20/swagger.json index 408621d1bed9..98a1f3882d54 100644 --- a/specification/applicationinsights/data-plane/microsoft.insights/preview/2018-04-20/swagger.json +++ b/specification/applicationinsights/data-plane/microsoft.insights/preview/2018-04-20/swagger.json @@ -142,6 +142,9 @@ }, "intervaledMetric": { "$ref": "examples/metric-get-full.json" + }, + "segmentedIntervaledMetric": { + "$ref": "examples/metric-get-segmented.json" } }, "parameters": [ @@ -201,7 +204,7 @@ "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Insights/components/{applicationName}/metrics/metadata": { "get": { "operationId": "Metrics_GetMetadata", - "summary": "Retrieve metric metatadata", + "summary": "Retrieve metric metadata", "description": "Gets metadata describing the available metrics", "x-ms-examples": { "metricMetadata": { @@ -487,7 +490,7 @@ ], "x-ms-enum": { "name": "MetricsAggregation", - "modelAsString": false + "modelAsString": true } } }, @@ -807,7 +810,7 @@ ], "x-ms-enum": { "name": "MetricsAggregation", - "modelAsString": false + "modelAsString": true } } }, @@ -999,9 +1002,7 @@ } } }, - "additionalProperties": { - "type": "object" - } + "additionalProperties": true }, "eventType": { "description": "The type of events to query; either a standard event type (`traces`, `customEvents`, `pageViews`, `requests`, `dependencies`, `exceptions`, `availabilityResults`) or `$all` to query across all event types.", @@ -1533,7 +1534,7 @@ "type": "string" }, "outerAssembly": { - "description": "The outer assmebly of the exception", + "description": "The outer assembly of the exception", "type": "string" }, "outerMessage": { 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 c8065b8adce7..64af9e8269d5 100644 --- a/specification/applicationinsights/data-plane/microsoft.insights/preview/v1/AppInsights.json +++ b/specification/applicationinsights/data-plane/microsoft.insights/preview/v1/AppInsights.json @@ -56,6 +56,9 @@ }, "intervaledMetric": { "$ref": "examples/metric-get-full.json" + }, + "segmentedIntervaledMetric": { + "$ref": "examples/metric-get-segmented.json" } }, "parameters": [ @@ -140,7 +143,7 @@ "/apps/{appId}/metrics/metadata": { "get": { "operationId": "Metrics_GetMetadata", - "summary": "Retrieve metric metatadata", + "summary": "Retrieve metric metadata", "description": "Gets metadata describing the available metrics", "x-ms-examples": { "metricMetadata": { @@ -936,9 +939,7 @@ } } }, - "additionalProperties": { - "type": "object" - } + "additionalProperties": true }, "eventType": { "description": "The type of events to query; either a standard event type (`traces`, `customEvents`, `pageViews`, `requests`, `dependencies`, `exceptions`, `availabilityResults`) or `$all` to query across all event types.", @@ -1470,7 +1471,7 @@ "type": "string" }, "outerAssembly": { - "description": "The outer assmebly of the exception", + "description": "The outer assembly of the exception", "type": "string" }, "outerMessage": { diff --git a/specification/applicationinsights/data-plane/microsoft.insights/preview/v1/examples/metric-get-segmented.json b/specification/applicationinsights/data-plane/microsoft.insights/preview/v1/examples/metric-get-segmented.json new file mode 100644 index 000000000000..f8844e39107b --- /dev/null +++ b/specification/applicationinsights/data-plane/microsoft.insights/preview/v1/examples/metric-get-segmented.json @@ -0,0 +1,146 @@ +{ + "title": "Get intervaled and segmented request count", + "description": "Gets intervaled and segmented metric", + "parameters": { + "appId": "DEMO_APP", + "metricId": "requests%2Fcount", + "timespan": "P2D", + "interval": "P1D", + "segment": [ + "operation/name", + "request/success" + ] + }, + "responses": { + "200": { + "body": { + "value": { + "start": "2018-10-22T10:40:09.065Z", + "end": "2018-10-22T22:40:09.065Z", + "segments": [ + { + "operation/name": "GET Home/Index", + "segments": [ + { + "requests/count": null, + "sum": 156483, + "request/success": false + }, + { + "requests/count": null, + "sum": 3795, + "request/success": true + } + ] + }, + { + "operation/name": "GET /", + "segments": [ + { + "requests/count": null, + "sum": 34168, + "request/success": false + }, + { + "requests/count": null, + "sum": 12, + "request/success": true + } + ] + }, + { + "operation/name": "GET /FabrikamProd/Content/fonts/segoewp-light-webfont.eot", + "segments": [ + { + "requests/count": null, + "sum": 9378, + "request/success": true + } + ] + }, + { + "operation/name": "GET /FabrikamProd/Content/fonts/segoewp-webfont.eot", + "segments": [ + { + "requests/count": null, + "sum": 9370, + "request/success": true + } + ] + }, + { + "operation/name": "GET ServiceTickets/Details", + "segments": [ + { + "requests/count": null, + "sum": 1989, + "request/success": false + }, + { + "requests/count": null, + "sum": 14, + "request/success": true + } + ] + }, + { + "operation/name": "GET ServiceTickets/Index", + "segments": [ + { + "requests/count": null, + "sum": 1991, + "request/success": true + } + ] + }, + { + "operation/name": "GET Employees/Index", + "segments": [ + { + "requests/count": null, + "sum": 1990, + "request/success": true + } + ] + }, + { + "operation/name": "GET ServiceTickets/GetLogEntries", + "segments": [ + { + "requests/count": null, + "sum": 1985, + "request/success": true + } + ] + }, + { + "operation/name": "GET Employees/Details", + "segments": [ + { + "requests/count": null, + "sum": 663, + "request/success": false + }, + { + "requests/count": null, + "sum": 663, + "request/success": true + } + ] + }, + { + "operation/name": "GET Reports/Index", + "segments": [ + { + "requests/count": null, + "sum": 1086, + "request/success": true + } + ] + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/applicationinsights/data-plane/microsoft.insights/preview/v1/examples/query-schema.json b/specification/applicationinsights/data-plane/microsoft.insights/preview/v1/examples/query-schema.json index 9041c74be769..505248f596ee 100644 --- a/specification/applicationinsights/data-plane/microsoft.insights/preview/v1/examples/query-schema.json +++ b/specification/applicationinsights/data-plane/microsoft.insights/preview/v1/examples/query-schema.json @@ -182,7 +182,7 @@ [ "traces", "itemCount", - "System.Double" + "System.Int32" ], [ "customEvents", @@ -332,7 +332,7 @@ [ "customEvents", "itemCount", - "System.Double" + "System.Int32" ], [ "pageViews", @@ -497,7 +497,7 @@ [ "pageViews", "itemCount", - "System.Double" + "System.Int32" ], [ "requests", @@ -682,7 +682,7 @@ [ "requests", "itemCount", - "System.Double" + "System.Int32" ], [ "dependencies", @@ -872,7 +872,7 @@ [ "dependencies", "itemCount", - "System.Double" + "System.Int32" ], [ "exceptions", @@ -1097,7 +1097,7 @@ [ "exceptions", "itemCount", - "System.Double" + "System.Int32" ], [ "availabilityResults", @@ -1282,7 +1282,7 @@ [ "availabilityResults", "itemCount", - "System.Double" + "System.Int32" ], [ "customMetrics", @@ -1482,7 +1482,7 @@ [ "performanceCounters", "value", - "System.String" + "System.Double" ], [ "performanceCounters", @@ -1797,7 +1797,7 @@ [ "browserTimings", "itemCount", - "System.Double" + "System.Int32" ], [ "tEST_CL", diff --git a/specification/applicationinsights/data-plane/readme.go.md b/specification/applicationinsights/data-plane/readme.go.md index 618a78d847fa..3c88242b48d2 100644 --- a/specification/applicationinsights/data-plane/readme.go.md +++ b/specification/applicationinsights/data-plane/readme.go.md @@ -21,19 +21,5 @@ These settings apply only when `--tag=v1 --go` is specified on the command line. Please also specify `--go-sdk-folder=`. ``` yaml $(tag) == 'v1' && $(go) -output-folder: $(go-sdk-folder)/services/appinsights/v1/$(namespace) -``` - -``` yaml $(typescript) -typescript: - package-name: azure-applicationinsights-query - package-version: 1.0.0-Preview-1 - output-folder: $(node-sdks-folder)/lib/services/applicationinsightsQuery/lib - generate-metadata: true - azure-arm: true - add-credentials: true -directive: - - from: swagger-document - where: $.definitions.table.properties.rows.items.items - transform: $.type = "object" +output-folder: $(go-sdk-folder)/services/preview/appinsights/v1/$(namespace) ``` \ No newline at end of file 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 8767c21df81d..892b2703d813 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 @@ -145,7 +145,7 @@ "description": "The workbook has been successfully deleted." }, "204": { - "description": "The resource doens't exist." + "description": "The resource doesn't exist." }, "default": { "description": "Error response describing why the operation failed.", diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/aiOperations_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/aiOperations_API.json index 1cffd9d61bea..5e455777d7bd 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/aiOperations_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/aiOperations_API.json @@ -68,7 +68,7 @@ }, "definitions": { "ErrorResponse": { - "description": "Error reponse indicates Insights service is not able to process the incoming request. The reason is provided in the error message.", + "description": "Error response indicates Insights service is not able to process the incoming request. The reason is provided in the error message.", "type": "object", "properties": { "code": { diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentApiKeys_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentApiKeys_API.json index 0987ca2e0d02..b170d7dc0239 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentApiKeys_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentApiKeys_API.json @@ -183,7 +183,7 @@ }, "definitions": { "APIKeyRequest": { - "description": "An Application Insights component API Key createion request definition.", + "description": "An Application Insights component API Key creation request definition.", "type": "object", "properties": { "name": { @@ -228,7 +228,7 @@ "id": { "type": "string", "readOnly": true, - "description": "The unique ID of the API key inside an Applciation Insights component. It is auto generated when the API key is created." + "description": "The unique ID of the API key inside an Application Insights component. It is auto generated when the API key is created." }, "apiKey": { "type": "string", diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentContinuousExport_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentContinuousExport_API.json index fe843165704c..d81cfddbb501 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentContinuousExport_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentContinuousExport_API.json @@ -278,7 +278,7 @@ "ExportId": { "type": "string", "readOnly": true, - "description": "The unique ID of the export configuration inside an Applciation Insights component. It is auto generated when the Continuous Export configuration is created." + "description": "The unique ID of the export configuration inside an Application Insights component. It is auto generated when the Continuous Export configuration is created." }, "InstrumentationKey": { "type": "string", diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentFeaturesAndPricing_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentFeaturesAndPricing_API.json index 38513f197704..0469ae7301d3 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentFeaturesAndPricing_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentFeaturesAndPricing_API.json @@ -142,7 +142,7 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/featurecapabilities": { "get": { - "description": "Returns feature capabilites of the application insights component.", + "description": "Returns feature capabilities of the application insights component.", "operationId": "ComponentFeatureCapabilities_Get", "parameters": [ { @@ -213,7 +213,7 @@ "description": "An Application Insights component billing features", "properties": { "DataVolumeCap": { - "description": "An Application Insights component daily data volumne cap", + "description": "An Application Insights component daily data volume cap", "$ref": "#/definitions/ApplicationInsightsComponentDataVolumeCap" }, "CurrentBillingFeatures": { @@ -227,7 +227,7 @@ }, "ApplicationInsightsComponentDataVolumeCap": { "type": "object", - "description": "An Application Insights component daily data volumne cap", + "description": "An Application Insights component daily data volume cap", "properties": { "Cap": { "type": "number", @@ -345,7 +345,7 @@ "TrackingType": { "type": "string", "readOnly": true, - "description": "The applciation insights component used tracking type." + "description": "The application insights component used tracking type." }, "DailyCap": { "type": "number", @@ -375,7 +375,7 @@ "$ref": "#/definitions/ApplicationInsightsComponentFeature" }, "readOnly": true, - "description": "A list of Application Insigths component feature." + "description": "A list of Application Insights component feature." } } }, @@ -396,7 +396,7 @@ "MeterRateFrequency":{ "type": "string", "readOnly": true, - "description": "The meter meter rate for the feature's meter." + "description": "The meter rate for the feature's meter." }, "ResouceId":{ "type": "string", @@ -415,12 +415,12 @@ "$ref": "#/definitions/ApplicationInsightsComponentFeatureCapability" }, "readOnly": true, - "description": "A list of Application Insigths component feature capability." + "description": "A list of Application Insights component feature capability." }, "Title": { "type": "string", "readOnly": true, - "description": "Desplay name of the feature." + "description": "Display name of the feature." }, "IsMainFeature": { "type": "boolean", @@ -451,7 +451,7 @@ "Value":{ "type": "string", "readOnly": true, - "description": "The vaule of the capability." + "description": "The value of the capability." }, "Unit":{ "type": "string", diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentProactiveDetection_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentProactiveDetection_API.json index 2b83ff8dce73..b1edfef80cce 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentProactiveDetection_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentProactiveDetection_API.json @@ -211,7 +211,7 @@ "HelpUrl": { "type": "string", "readOnly": false, - "description": "URL which displays aditional info about the proactive detection rule" + "description": "URL which displays additional info about the proactive detection rule" }, "IsHidden": { "type": "boolean", diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentWorkItemConfigs_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentWorkItemConfigs_API.json index 0b19c8af4472..51065656a688 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentWorkItemConfigs_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/componentWorkItemConfigs_API.json @@ -151,7 +151,7 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/WorkItemConfigs/{workItemConfigId}": { "delete": { - "description": "Delete an workitem configuration of an Application Insights component.", + "description": "Delete a work item configuration of an Application Insights component.", "operationId": "WorkItemConfigurations_Delete", "parameters": [ { @@ -235,7 +235,7 @@ }, "ConnectorDataConfiguration": { "type": "string", - "description": "Serialized JSON object for detaile d properties" + "description": "Serialized JSON object for detailed properties" }, "ValidateOnly": { "type": "boolean", diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/components_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/components_API.json index c550d1965d11..80e9024a2ad5 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/components_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/components_API.json @@ -507,7 +507,7 @@ }, "nextLink": { "type": "string", - "description": "The URI to get the next set of Application Insights component defintions if too many components where returned in the result set." + "description": "The URI to get the next set of Application Insights component definitions if too many components where returned in the result set." } } }, diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/webTests_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/webTests_API.json index 56a30eaf078e..eb880c0232ce 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/webTests_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/webTests_API.json @@ -216,7 +216,7 @@ }, "/subscriptions/{subscriptionId}/providers/Microsoft.Insights/webtests": { "get": { - "description": "Get all Application Insights web test alerts definitioned within a subscription.", + "description": "Get all Application Insights web test alerts definitions within a subscription.", "operationId": "WebTests_List", "parameters": [ { 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 60b4f9f28063..e472cd120d6e 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 @@ -142,7 +142,7 @@ "description": "The workbook has been successfully deleted." }, "204": { - "description": "The resource doens't exist." + "description": "The resource doesn't exist." }, "default": { "description": "Error response describing why the operation failed.", diff --git a/specification/applicationinsights/resource-manager/microsoft.insights/preview/2017-10-01/componentFeaturesAndPricing_API.json b/specification/applicationinsights/resource-manager/microsoft.insights/preview/2017-10-01/componentFeaturesAndPricing_API.json index 12bbd1d7bf87..4ebbf3e83284 100644 --- a/specification/applicationinsights/resource-manager/microsoft.insights/preview/2017-10-01/componentFeaturesAndPricing_API.json +++ b/specification/applicationinsights/resource-manager/microsoft.insights/preview/2017-10-01/componentFeaturesAndPricing_API.json @@ -188,7 +188,7 @@ }, "PricingPlanProperties": { "type": "object", - "description": "An Application Insights component daily data volumne cap", + "description": "An Application Insights component daily data volume cap", "properties": { "planType": { "type": "string", diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-01-01-preview/authorization-ProviderOperationsCalls.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-01-01-preview/authorization-ProviderOperationsCalls.json new file mode 100644 index 000000000000..1aa6eba61b6a --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-01-01-preview/authorization-ProviderOperationsCalls.json @@ -0,0 +1,249 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2018-01-01-preview", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These calls handle provider operations." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.Authorization/providerOperations/{resourceProviderNamespace}": { + "get": { + "tags": [ + "ProviderOperationsMetadata" + ], + "operationId": "ProviderOperationsMetadata_Get", + "description": "Gets provider operations metadata for the specified resource provider.", + "parameters": [ + { + "$ref": "#/parameters/ResourceProviderNamespaceParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "default": "resourceTypes", + "description": "Specifies whether to expand the values." + } + ], + "responses": { + "200": { + "description": "OK - Returns the operations metadata.", + "schema": { + "$ref": "#/definitions/ProviderOperationsMetadata" + } + } + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetProviderOperationsRP.json" + } + } + } + }, + "/providers/Microsoft.Authorization/providerOperations": { + "get": { + "tags": [ + "ProviderOperationsMetadata" + ], + "operationId": "ProviderOperationsMetadata_List", + "description": "Gets provider operations metadata for all resource providers.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "default": "resourceTypes", + "description": "Specifies whether to expand the values." + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of the operations metadata.", + "schema": { + "$ref": "#/definitions/ProviderOperationsMetadataListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetAllProviderOperations.json" + } + } + } + } + }, + "definitions": { + "ResourceType": { + "properties": { + "name": { + "type": "string", + "description": "The resource type name." + }, + "displayName": { + "type": "string", + "description": "The resource type display name." + }, + "operations": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderOperation" + }, + "description": "The resource type operations." + } + }, + "description": "Resource Type" + }, + "ProviderOperation": { + "properties": { + "name": { + "type": "string", + "description": "The operation name." + }, + "displayName": { + "type": "string", + "description": "The operation display name." + }, + "description": { + "type": "string", + "description": "The operation description." + }, + "origin": { + "type": "string", + "description": "The operation origin." + }, + "properties": { + "type": "object", + "x-ms-client-flatten": true, + "description": "The operation properties." + }, + "isDataAction": { + "type": "boolean", + "description": "The dataAction flag to specify the operation type." + } + }, + "description": "Operation" + }, + "ProviderOperationsMetadata": { + "properties": { + "id": { + "type": "string", + "description": "The provider id." + }, + "name": { + "type": "string", + "description": "The provider name." + }, + "type": { + "type": "string", + "description": "The provider type." + }, + "displayName": { + "type": "string", + "description": "The provider display name." + }, + "resourceTypes": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceType" + }, + "description": "The provider resource types" + }, + "operations": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderOperation" + }, + "description": "The provider operations." + } + }, + "description": "Provider Operations metadata" + }, + "ProviderOperationsMetadataListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderOperationsMetadata" + }, + "description": "The list of providers." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Provider operations metadata list" + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "ResourceProviderNamespaceParameter": { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider.", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleAssignmentsCalls.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleAssignmentsCalls.json new file mode 100644 index 000000000000..e3c98cc22448 --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleAssignmentsCalls.json @@ -0,0 +1,623 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2018-01-01-preview", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role assignments. A role assignment grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForResource", + "description": "Gets role assignments for a resource.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceProviderNamespaceParameter" + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to get role assignments for." + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetRoleAssignmentsForResource.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForResourceGroup", + "description": "Gets role assignments for a resource group.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetRoleAssignmentsForResourceGroup.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}": { + "delete": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Delete", + "description": "Deletes a role assignment.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment to delete.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment to delete." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + } + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/DeleteRoleAssignmentByName.json" + } + } + }, + "put": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Create", + "description": "Creates a role assignment.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment to create. The scope can be any REST resource instance. For example, use '/subscriptions/{subscription-id}/' for a subscription, '/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}' for a resource group, and '/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/{resource-provider}/{resource-type}/{resource-name}' for a resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment to create. It can be any valid GUID." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleAssignmentCreateParameters" + }, + "description": "Parameters for the role assignment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + } + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/PutRoleAssignment.json" + } + } + }, + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Get", + "description": "Get the specified role assignment.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + } + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetRoleAssignmentByName.json" + } + } + } + }, + "/{roleId}": { + "delete": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_DeleteById", + "description": "Deletes a role assignment.", + "parameters": [ + { + "name": "roleId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the role assignment to delete.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + } + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/DeleteRoleAssignmentById.json" + } + } + }, + "put": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_CreateById", + "description": "Creates a role assignment by ID.", + "parameters": [ + { + "name": "roleId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the role assignment to create.", + "x-ms-skip-url-encoding": true + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleAssignmentCreateParameters" + }, + "description": "Parameters for the role assignment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + } + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/PutRoleAssignmentById.json" + } + } + }, + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_GetById", + "description": "Gets a role assignment by ID.", + "parameters": [ + { + "name": "roleId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the role assignment to get.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + } + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetRoleAssignmentById.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_List", + "description": "Gets all role assignments for the subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetAllRoleAssignments.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForScope", + "description": "Gets role assignments for a scope.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignments.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetRoleAssignmentByScope.json" + } + } + } + } + }, + "definitions": { + "RoleAssignmentFilter": { + "properties": { + "principalId": { + "type": "string", + "description": "Returns role assignment of the specific principal." + }, + "canDelegate": { + "type": "boolean", + "description": "The Delegation flag for the roleassignment" + } + }, + "description": "Role Assignments filter" + }, + "RoleAssignmentPropertiesWithScope": { + "properties": { + "scope": { + "type": "string", + "description": "The role assignment scope." + }, + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID." + }, + "principalId": { + "type": "string", + "description": "The principal ID." + }, + "canDelegate": { + "type": "boolean", + "description": "The Delegation flag for the roleassignment" + } + }, + "description": "Role assignment properties with scope." + }, + "RoleAssignment": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role assignment ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role assignment name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role assignment type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleAssignmentPropertiesWithScope", + "description": "Role assignment properties." + } + }, + "description": "Role Assignments" + }, + "RoleAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleAssignment" + }, + "description": "Role assignment list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Role assignment list operation result." + }, + "RoleAssignmentProperties": { + "properties": { + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID used in the role assignment." + }, + "principalId": { + "type": "string", + "description": "The principal ID assigned to the role. This maps to the ID inside the Active Directory. It can point to a user, service principal, or security group." + }, + "canDelegate": { + "type": "boolean", + "description": "The delgation flag used for creating a role assignment" + } + }, + "required": [ + "roleDefinitionId", + "principalId" + ], + "description": "Role assignment properties." + }, + "RoleAssignmentCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleAssignmentProperties", + "description": "Role assignment properties." + } + }, + "required": [ + "properties" + ], + "description": "Role assignment create parameters." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "ResourceProviderNamespaceParameter": { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider.", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleBasedCalls.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleBasedCalls.json deleted file mode 100644 index 378c5e0d69e0..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleBasedCalls.json +++ /dev/null @@ -1,1230 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "AuthorizationManagementClient", - "version": "2018-01-01-preview", - "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role definitions and role assignments. A role definition describes the set of actions that can be performed on resources. A role assignment grants access to Azure Active Directory users." - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "security": [{ - "azure_auth": [ - "user_impersonation" - ] - }], - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "flow": "implicit", - "description": "Azure Active Directory OAuth2 Flow", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - }, - "paths": { - "/providers/Microsoft.Authorization/providerOperations/{resourceProviderNamespace}": { - "get": { - "tags": [ - "ProviderOperationsMetadata" - ], - "operationId": "ProviderOperationsMetadata_Get", - "description": "Gets provider operations metadata for the specified resource provider.", - "parameters": [ - { - "$ref": "#/parameters/ResourceProviderNamespaceParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "default": "resourceTypes", - "description": "Specifies whether to expand the values." - } - ], - "responses": { - "200": { - "description": "OK - Returns the operations metadata.", - "schema": { - "$ref": "#/definitions/ProviderOperationsMetadata" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetProviderOperationsRP.json" - } - } - } - }, - "/providers/Microsoft.Authorization/providerOperations": { - "get": { - "tags": [ - "ProviderOperationsMetadata" - ], - "operationId": "ProviderOperationsMetadata_List", - "description": "Gets provider operations metadata for all resource providers.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "default": "resourceTypes", - "description": "Specifies whether to expand the values." - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of the operations metadata.", - "schema": { - "$ref": "#/definitions/ProviderOperationsMetadataListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetAllProviderOperations.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Authorization/permissions": { - "get": { - "tags": [ - "Permissions" - ], - "operationId": "Permissions_ListForResourceGroup", - "description": "Gets all permissions the caller has for a resource group.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of permissions.", - "schema": { - "$ref": "#/definitions/PermissionGetResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetPermissions.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/permissions": { - "get": { - "tags": [ - "Permissions" - ], - "operationId": "Permissions_ListForResource", - "description": "Gets all permissions the caller has for a resource.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ResourceProviderNamespaceParameter" - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get the permissions for." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of permissions.", - "schema": { - "$ref": "#/definitions/PermissionGetResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetResourcePermissions.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/roleAssignments": { - "get": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_ListForResource", - "description": "Gets role assignments for a resource.", - "parameters": [{ - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ResourceProviderNamespaceParameter" - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get role assignments for." - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of role assignments.", - "schema": { - "$ref": "#/definitions/RoleAssignmentListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/RoleAssignmentFilter", - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetRoleAssignmentsForResource.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Authorization/roleAssignments": { - "get": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_ListForResourceGroup", - "description": "Gets role assignments for a resource group.", - "parameters": [{ - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of role assignments.", - "schema": { - "$ref": "#/definitions/RoleAssignmentListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/RoleAssignmentFilter", - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetRoleAssignmentsForResourceGroup.json" - } - } - } - }, - "/{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}": { - "delete": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_Delete", - "description": "Deletes a role assignment.", - "parameters": [{ - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope of the role assignment to delete.", - "x-ms-skip-url-encoding": true - }, - { - "name": "roleAssignmentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the role assignment to delete." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the role assignment.", - "schema": { - "$ref": "#/definitions/RoleAssignment" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/DeleteRoleAssignmentByName.json" - } - } - }, - "put": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_Create", - "description": "Creates a role assignment.", - "parameters": [{ - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope of the role assignment to create. The scope can be any REST resource instance. For example, use '/subscriptions/{subscription-id}/' for a subscription, '/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}' for a resource group, and '/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/{resource-provider}/{resource-type}/{resource-name}' for a resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "roleAssignmentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the role assignment to create. It can be any valid GUID." - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/RoleAssignmentCreateParameters" - }, - "description": "Parameters for the role assignment." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "201": { - "description": "Created - Returns information about the role assignment.", - "schema": { - "$ref": "#/definitions/RoleAssignment" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/PutRoleAssignment.json" - } - } - }, - "get": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_Get", - "description": "Get the specified role assignment.", - "parameters": [{ - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope of the role assignment.", - "x-ms-skip-url-encoding": true - }, - { - "name": "roleAssignmentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the role assignment to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the role assignment.", - "schema": { - "$ref": "#/definitions/RoleAssignment" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetRoleAssignmentByName.json" - } - } - } - }, - "/{roleId}": { - "delete": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_DeleteById", - "description": "Deletes a role assignment.", - "parameters": [{ - "name": "roleId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the role assignment to delete.", - "x-ms-skip-url-encoding": true - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the role assignment.", - "schema": { - "$ref": "#/definitions/RoleAssignment" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/DeleteRoleAssignmentById.json" - } - } - }, - "put": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_CreateById", - "description": "Creates a role assignment by ID.", - "parameters": [{ - "name": "roleId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the role assignment to create.", - "x-ms-skip-url-encoding": true - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/RoleAssignmentCreateParameters" - }, - "description": "Parameters for the role assignment." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "201": { - "description": "Created - Returns the role assignment.", - "schema": { - "$ref": "#/definitions/RoleAssignment" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/PutRoleAssignmentById.json" - } - } - }, - "get": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_GetById", - "description": "Gets a role assignment by ID.", - "parameters": [{ - "name": "roleId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the role assignment to get.", - "x-ms-skip-url-encoding": true - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the role assignment.", - "schema": { - "$ref": "#/definitions/RoleAssignment" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetRoleAssignmentById.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/roleAssignments": { - "get": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_List", - "description": "Gets all role assignments for the subscription.", - "parameters": [{ - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of role assignments.", - "schema": { - "$ref": "#/definitions/RoleAssignmentListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/RoleAssignmentFilter", - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetAllRoleAssignments.json" - } - } - } - }, - "/{scope}/providers/Microsoft.Authorization/roleAssignments": { - "get": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_ListForScope", - "description": "Gets role assignments for a scope.", - "parameters": [{ - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope of the role assignments.", - "x-ms-skip-url-encoding": true - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of role assignments.", - "schema": { - "$ref": "#/definitions/RoleAssignmentListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/RoleAssignmentFilter", - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetRoleAssignmentByScope.json" - } - } - } - }, - "/{scope}/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId}": { - "delete": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_Delete", - "description": "Deletes a role definition.", - "parameters": [{ - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope of the role definition.", - "x-ms-skip-url-encoding": true - }, - { - "name": "roleDefinitionId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the role definition to delete." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the role definition.", - "schema": { - "$ref": "#/definitions/RoleDefinition" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/DeleteRoleDefinition.json" - } - } - }, - "get": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_Get", - "description": "Get role definition by name (GUID).", - "parameters": [{ - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope of the role definition.", - "x-ms-skip-url-encoding": true - }, - { - "name": "roleDefinitionId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the role definition." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the role definition.", - "schema": { - "$ref": "#/definitions/RoleDefinition" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetRoleDefinitionByName.json" - } - } - }, - "put": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_CreateOrUpdate", - "description": "Creates or updates a role definition.", - "parameters": [{ - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope of the role definition.", - "x-ms-skip-url-encoding": true - }, - { - "name": "roleDefinitionId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the role definition." - }, - { - "name": "roleDefinition", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/RoleDefinition" - }, - "description": "The values for the role definition." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "201": { - "description": "OK - Returns information about the role definition.", - "schema": { - "$ref": "#/definitions/RoleDefinition" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/PutRoleDefinition.json" - } - } - } - }, - "/{scope}/providers/Microsoft.Authorization/roleDefinitions": { - "get": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_List", - "description": "Get all role definitions that are applicable at scope and above.", - "parameters": [{ - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope of the role definition.", - "x-ms-skip-url-encoding": true - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. Use atScopeAndBelow filter to search below the given scope as well." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of role definitions.", - "schema": { - "$ref": "#/definitions/RoleDefinitionListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/RoleDefinitionFilter", - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetRoleDefinitionAtScope.json" - } - } - } - } - }, - "x-ms-paths":{ - "/{roleId}?disambiguation_dummy": { - "get": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_GetById", - "description": "Gets a role definition by ID.", - "parameters": [{ - "name": "roleId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified role definition ID. Use the format, /subscriptions/{guid}/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId} for subscription level role definitions, or /providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId} for tenant level role definitions.", - "x-ms-skip-url-encoding": true - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the role definition.", - "schema": { - "$ref": "#/definitions/RoleDefinition" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetRoleDefinitionById.json" - } - } - } - } - }, - "definitions": { - "ProviderOperation": { - "properties": { - "name": { - "type": "string", - "description": "The operation name." - }, - "displayName": { - "type": "string", - "description": "The operation display name." - }, - "description": { - "type": "string", - "description": "The operation description." - }, - "origin": { - "type": "string", - "description": "The operation origin." - }, - "properties": { - "type": "object", - "x-ms-client-flatten": true, - "description": "The operation properties." - }, - "isDataAction": { - "type": "boolean", - "description": "The dataAction flag to specify the operation type." - } - }, - "description": "Operation" - }, - "ResourceType": { - "properties": { - "name": { - "type": "string", - "description": "The resource type name." - }, - "displayName": { - "type": "string", - "description": "The resource type display name." - }, - "operations": { - "type": "array", - "items": { - "$ref": "#/definitions/ProviderOperation" - }, - "description": "The resource type operations." - } - }, - "description": "Resource Type" - }, - "ProviderOperationsMetadata": { - "properties": { - "id": { - "type": "string", - "description": "The provider id." - }, - "name": { - "type": "string", - "description": "The provider name." - }, - "type": { - "type": "string", - "description": "The provider type." - }, - "displayName": { - "type": "string", - "description": "The provider display name." - }, - "resourceTypes": { - "type": "array", - "items": { - "$ref": "#/definitions/ResourceType" - }, - "description": "The provider resource types" - }, - "operations": { - "type": "array", - "items": { - "$ref": "#/definitions/ProviderOperation" - }, - "description": "The provider operations." - } - }, - "description": "Provider Operations metadata" - }, - "ProviderOperationsMetadataListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/ProviderOperationsMetadata" - }, - "description": "The list of providers." - }, - "nextLink": { - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "Provider operations metadata list" - }, - "PermissionGetResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/Permission" - }, - "description": "An array of permissions." - }, - "nextLink": { - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "Permissions information." - }, - "RoleDefinitionFilter": { - "properties": { - "roleName": { - "type": "string", - "description": "Returns role definition with the specific name." - }, - "type": { - "type": "string", - "description": "Returns role definition with the specific type." - } - }, - "description": "Role Definitions filter" - }, - "RoleDefinitionProperties": { - "properties": { - "roleName": { - "type": "string", - "description": "The role name." - }, - "description": { - "type": "string", - "description": "The role definition description." - }, - "type": { - "type": "string", - "description": "The role type.", - "x-ms-client-name": "roleType" - }, - "permissions": { - "type": "array", - "items": { - "$ref": "#/definitions/Permission" - }, - "description": "Role definition permissions." - }, - "assignableScopes": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Role definition assignable scopes." - } - }, - "description": "Role definition properties." - }, - "RoleDefinition": { - "properties": { - "id": { - "type": "string", - "readOnly": true, - "description": "The role definition ID." - }, - "name": { - "type": "string", - "readOnly": true, - "description": "The role definition name." - }, - "type": { - "type": "string", - "readOnly": true, - "description": "The role definition type." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/RoleDefinitionProperties", - "description": "Role definition properties." - } - }, - "description": "Role definition." - }, - "RoleDefinitionListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/RoleDefinition" - }, - "description": "Role definition list." - }, - "nextLink": { - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "Role definition list operation result." - }, - "RoleAssignmentFilter": { - "properties": { - "principalId": { - "type": "string", - "description": "Returns role assignment of the specific principal." - }, - "canDelegate": { - "type": "boolean", - "description": "The Delegation flag for the roleassignment" - } - }, - "description": "Role Assignments filter" - }, - "RoleAssignmentPropertiesWithScope": { - "properties": { - "scope": { - "type": "string", - "description": "The role assignment scope." - }, - "roleDefinitionId": { - "type": "string", - "description": "The role definition ID." - }, - "principalId": { - "type": "string", - "description": "The principal ID." - }, - "canDelegate": { - "type": "boolean", - "description": "The Delegation flag for the roleassignment" - } - }, - "description": "Role assignment properties with scope." - }, - "RoleAssignment": { - "properties": { - "id": { - "type": "string", - "readOnly": true, - "description": "The role assignment ID." - }, - "name": { - "type": "string", - "readOnly": true, - "description": "The role assignment name." - }, - "type": { - "type": "string", - "readOnly": true, - "description": "The role assignment type." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/RoleAssignmentPropertiesWithScope", - "description": "Role assignment properties." - } - }, - "description": "Role Assignments" - }, - "RoleAssignmentListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/RoleAssignment" - }, - "description": "Role assignment list." - }, - "nextLink": { - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "Role assignment list operation result." - }, - "RoleAssignmentProperties": { - "properties": { - "roleDefinitionId": { - "type": "string", - "description": "The role definition ID used in the role assignment." - }, - "principalId": { - "type": "string", - "description": "The principal ID assigned to the role. This maps to the ID inside the Active Directory. It can point to a user, service principal, or security group." - }, - "canDelegate": { - "type": "boolean", - "description": "The delgation flag used for creating a role assignment" - } - }, - "required": [ - "roleDefinitionId", - "principalId" - ], - "description": "Role assignment properties." - }, - "RoleAssignmentCreateParameters": { - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/RoleAssignmentProperties", - "description": "Role assignment properties." - } - }, - "required": [ - "properties" - ], - "description": "Role assignment create parameters." - }, - "Permission": { - "properties": { - "actions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Allowed actions." - }, - "notActions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Denied actions." - }, - "dataActions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Allowed Data actions." - }, - "notDataActions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Denied Data actions." - } - }, - "description": "Role definition permissions." - } - }, - "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the target subscription." - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for this operation." - }, - "ResourceGroupNameParameter": { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group.", - "x-ms-parameter-location": "method" - }, - "ResourceProviderNamespaceParameter": { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider.", - "x-ms-parameter-location": "method" - } - } -} \ No newline at end of file diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleDefinitionsCalls.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleDefinitionsCalls.json new file mode 100644 index 000000000000..809db9dfe1ed --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-01-01-preview/authorization-RoleDefinitionsCalls.json @@ -0,0 +1,527 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2018-01-01-preview", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations allow you to manage role definitions. A role definition describes the set of actions that can be performed on resources." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Authorization/permissions": { + "get": { + "tags": [ + "Permissions" + ], + "operationId": "Permissions_ListForResourceGroup", + "description": "Gets all permissions the caller has for a resource group.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of permissions.", + "schema": { + "$ref": "#/definitions/PermissionGetResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetPermissions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/permissions": { + "get": { + "tags": [ + "Permissions" + ], + "operationId": "Permissions_ListForResource", + "description": "Gets all permissions the caller has for a resource.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceProviderNamespaceParameter" + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to get the permissions for." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of permissions.", + "schema": { + "$ref": "#/definitions/PermissionGetResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetResourcePermissions.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId}": { + "delete": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_Delete", + "description": "Deletes a role definition.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role definition.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the role definition to delete." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role definition.", + "schema": { + "$ref": "#/definitions/RoleDefinition" + } + } + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/DeleteRoleDefinition.json" + } + } + }, + "get": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_Get", + "description": "Get role definition by name (GUID).", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role definition.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the role definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role definition.", + "schema": { + "$ref": "#/definitions/RoleDefinition" + } + } + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetRoleDefinitionByName.json" + } + } + }, + "put": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_CreateOrUpdate", + "description": "Creates or updates a role definition.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role definition.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleDefinitionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the role definition." + }, + { + "name": "roleDefinition", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleDefinition" + }, + "description": "The values for the role definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "OK - Returns information about the role definition.", + "schema": { + "$ref": "#/definitions/RoleDefinition" + } + } + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/PutRoleDefinition.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleDefinitions": { + "get": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_List", + "description": "Get all role definitions that are applicable at scope and above.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role definition.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use atScopeAndBelow filter to search below the given scope as well." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role definitions.", + "schema": { + "$ref": "#/definitions/RoleDefinitionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleDefinitionFilter", + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetRoleDefinitionAtScope.json" + } + } + } + } + }, + "x-ms-paths": { + "/{roleId}?disambiguation_dummy": { + "get": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_GetById", + "description": "Gets a role definition by ID.", + "parameters": [ + { + "name": "roleId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified role definition ID. Use the format, /subscriptions/{guid}/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId} for subscription level role definitions, or /providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId} for tenant level role definitions.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role definition.", + "schema": { + "$ref": "#/definitions/RoleDefinition" + } + } + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetRoleDefinitionById.json" + } + } + } + } + }, + "definitions": { + "RoleDefinitionFilter": { + "properties": { + "roleName": { + "type": "string", + "description": "Returns role definition with the specific name." + }, + "type": { + "type": "string", + "description": "Returns role definition with the specific type." + } + }, + "description": "Role Definitions filter" + }, + "RoleDefinitionProperties": { + "properties": { + "roleName": { + "type": "string", + "description": "The role name." + }, + "description": { + "type": "string", + "description": "The role definition description." + }, + "type": { + "type": "string", + "description": "The role type.", + "x-ms-client-name": "roleType" + }, + "permissions": { + "type": "array", + "items": { + "$ref": "#/definitions/Permission" + }, + "description": "Role definition permissions." + }, + "assignableScopes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Role definition assignable scopes." + } + }, + "description": "Role definition properties." + }, + "RoleDefinition": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role definition ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role definition name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role definition type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleDefinitionProperties", + "description": "Role definition properties." + } + }, + "description": "Role definition." + }, + "RoleDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleDefinition" + }, + "description": "Role definition list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Role definition list operation result." + }, + "PermissionGetResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Permission" + }, + "description": "An array of permissions." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Permissions information." + }, + "Permission": { + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed actions." + }, + "notActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Denied actions." + }, + "dataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed Data actions." + }, + "notDataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Denied Data actions." + } + }, + "description": "Role definition permissions." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "ResourceProviderNamespaceParameter": { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider.", + "x-ms-parameter-location": "method" + }, + "FilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all deny assignments at or above the scope. Use $filter=denyAssignmentName eq '{name}' to search deny assignments by name at specified scope. Use $filter=principalId eq '{id}' to return all deny assignments at, above and below the scope for the specified principal. Use $filter=gdprExportPrincipalId eq '{id}' to return all deny assignments at, above and below the scope for the specified principal. This filter is different from the principalId filter as it returns not only those deny assignments that contain the specified principal is the Principals list but also those deny assignments that contain the specified principal is the ExcludePrincipals list. Additionally, when gdprExportPrincipalId filter is used, only the deny assignment name and description properties are returned.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/authorization-RoleAssignmentsCalls.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/authorization-RoleAssignmentsCalls.json new file mode 100644 index 000000000000..327f66b83e0e --- /dev/null +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/authorization-RoleAssignmentsCalls.json @@ -0,0 +1,663 @@ +{ + "swagger": "2.0", + "info": { + "title": "AuthorizationManagementClient", + "version": "2018-09-01-preview", + "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role assignments. A role assignment grants access to Azure Active Directory users." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForResource", + "description": "Gets role assignments for a resource.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ResourceProviderNamespaceParameter" + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to get role assignments for." + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetRoleAssignmentsForResource.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForResourceGroup", + "description": "Gets role assignments for a resource group.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetRoleAssignmentsForResourceGroup.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}": { + "delete": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Delete", + "description": "Deletes a role assignment.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment to delete.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment to delete." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + } + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/DeleteRoleAssignmentByName.json" + } + } + }, + "put": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Create", + "description": "Creates a role assignment.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment to create. The scope can be any REST resource instance. For example, use '/subscriptions/{subscription-id}/' for a subscription, '/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}' for a resource group, and '/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/{resource-provider}/{resource-type}/{resource-name}' for a resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment to create. It can be any valid GUID." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleAssignmentCreateParameters" + }, + "description": "Parameters for the role assignment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + } + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/PutRoleAssignment.json" + } + } + }, + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Get", + "description": "Get the specified role assignment.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + } + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetRoleAssignmentByName.json" + } + } + } + }, + "/{roleId}": { + "delete": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_DeleteById", + "description": "Deletes a role assignment.", + "parameters": [ + { + "name": "roleId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the role assignment to delete.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + } + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/DeleteRoleAssignmentById.json" + } + } + }, + "put": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_CreateById", + "description": "Creates a role assignment by ID.", + "parameters": [ + { + "name": "roleId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the role assignment to create.", + "x-ms-skip-url-encoding": true + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleAssignmentCreateParameters" + }, + "description": "Parameters for the role assignment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + } + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/PutRoleAssignmentById.json" + } + } + }, + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_GetById", + "description": "Gets a role assignment by ID.", + "parameters": [ + { + "name": "roleId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the role assignment to get.", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + } + }, + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetRoleAssignmentById.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_List", + "description": "Gets all role assignments for the subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetAllRoleAssignments.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForScope", + "description": "Gets role assignments for a scope.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignments.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter", + "x-ms-examples": { + "GetConfigurations": { + "$ref": "./examples/GetRoleAssignmentByScope.json" + } + } + } + } + }, + "definitions": { + "RoleAssignmentFilter": { + "properties": { + "principalId": { + "type": "string", + "description": "Returns role assignment of the specific principal." + }, + "canDelegate": { + "type": "boolean", + "description": "The Delegation flag for the roleassignment" + } + }, + "description": "Role Assignments filter" + }, + "RoleAssignmentPropertiesWithScope": { + "properties": { + "scope": { + "type": "string", + "description": "The role assignment scope." + }, + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID." + }, + "principalId": { + "type": "string", + "description": "The principal ID." + }, + "principalType": { + "type": "string", + "description": "The principal type of the assigned principal ID.", + "enum": [ + "User", + "Group", + "ServicePrincipal", + "Unknown", + "DirectoryRoleTemplate", + "ForeignGroup", + "Application", + "MSI", + "DirectoryObjectOrGroup", + "Everyone" + ], + "x-ms-enum": { + "name": "PrincipalType", + "modelAsString": true + } + }, + "canDelegate": { + "type": "boolean", + "description": "The Delegation flag for the roleassignment" + } + }, + "description": "Role assignment properties with scope." + }, + "RoleAssignment": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role assignment ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role assignment name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role assignment type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleAssignmentPropertiesWithScope", + "description": "Role assignment properties." + } + }, + "description": "Role Assignments" + }, + "RoleAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleAssignment" + }, + "description": "Role assignment list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Role assignment list operation result." + }, + "RoleAssignmentProperties": { + "properties": { + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID used in the role assignment." + }, + "principalId": { + "type": "string", + "description": "The principal ID assigned to the role. This maps to the ID inside the Active Directory. It can point to a user, service principal, or security group." + }, + "principalType": { + "type": "string", + "description": "The principal type of the assigned principal ID.", + "enum": [ + "User", + "Group", + "ServicePrincipal", + "Unknown", + "DirectoryRoleTemplate", + "ForeignGroup", + "Application", + "MSI", + "DirectoryObjectOrGroup", + "Everyone" + ], + "x-ms-enum": { + "name": "PrincipalType", + "modelAsString": true + } + }, + "canDelegate": { + "type": "boolean", + "description": "The delgation flag used for creating a role assignment" + } + }, + "required": [ + "roleDefinitionId", + "principalId" + ], + "description": "Role assignment properties." + }, + "RoleAssignmentCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleAssignmentProperties", + "description": "Role assignment properties." + } + }, + "required": [ + "properties" + ], + "description": "Role assignment create parameters." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "ResourceProviderNamespaceParameter": { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider.", + "x-ms-parameter-location": "method" + } + } +} \ No newline at end of file diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/authorization-RoleBasedCalls.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/authorization-RoleBasedCalls.json deleted file mode 100644 index 056a1bcfea61..000000000000 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/authorization-RoleBasedCalls.json +++ /dev/null @@ -1,1250 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "AuthorizationManagementClient", - "version": "2018-09-01-preview", - "description": "Role based access control provides you a way to apply granular level policy administration down to individual resources or resource groups. These operations enable you to manage role definitions and role assignments. A role definition describes the set of actions that can be performed on resources. A role assignment grants access to Azure Active Directory users." - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "security": [{ - "azure_auth": [ - "user_impersonation" - ] - }], - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "flow": "implicit", - "description": "Azure Active Directory OAuth2 Flow", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - }, - "paths": { - "/providers/Microsoft.Authorization/providerOperations/{resourceProviderNamespace}": { - "get": { - "tags": [ - "ProviderOperationsMetadata" - ], - "operationId": "ProviderOperationsMetadata_Get", - "description": "Gets provider operations metadata for the specified resource provider.", - "parameters": [ - { - "$ref": "#/parameters/ResourceProviderNamespaceParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "default": "resourceTypes", - "description": "Specifies whether to expand the values." - } - ], - "responses": { - "200": { - "description": "OK - Returns the operations metadata.", - "schema": { - "$ref": "#/definitions/ProviderOperationsMetadata" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetProviderOperationsRP.json" - } - } - } - }, - "/providers/Microsoft.Authorization/providerOperations": { - "get": { - "tags": [ - "ProviderOperationsMetadata" - ], - "operationId": "ProviderOperationsMetadata_List", - "description": "Gets provider operations metadata for all resource providers.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "default": "resourceTypes", - "description": "Specifies whether to expand the values." - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of the operations metadata.", - "schema": { - "$ref": "#/definitions/ProviderOperationsMetadataListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetAllProviderOperations.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Authorization/permissions": { - "get": { - "tags": [ - "Permissions" - ], - "operationId": "Permissions_ListForResourceGroup", - "description": "Gets all permissions the caller has for a resource group.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of permissions.", - "schema": { - "$ref": "#/definitions/PermissionGetResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetPermissions.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/permissions": { - "get": { - "tags": [ - "Permissions" - ], - "operationId": "Permissions_ListForResource", - "description": "Gets all permissions the caller has for a resource.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ResourceProviderNamespaceParameter" - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get the permissions for." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of permissions.", - "schema": { - "$ref": "#/definitions/PermissionGetResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetResourcePermissions.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}/providers/Microsoft.Authorization/roleAssignments": { - "get": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_ListForResource", - "description": "Gets role assignments for a resource.", - "parameters": [{ - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ResourceProviderNamespaceParameter" - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get role assignments for." - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of role assignments.", - "schema": { - "$ref": "#/definitions/RoleAssignmentListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/RoleAssignmentFilter", - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetRoleAssignmentsForResource.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Authorization/roleAssignments": { - "get": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_ListForResourceGroup", - "description": "Gets role assignments for a resource group.", - "parameters": [{ - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of role assignments.", - "schema": { - "$ref": "#/definitions/RoleAssignmentListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/RoleAssignmentFilter", - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetRoleAssignmentsForResourceGroup.json" - } - } - } - }, - "/{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}": { - "delete": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_Delete", - "description": "Deletes a role assignment.", - "parameters": [{ - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope of the role assignment to delete.", - "x-ms-skip-url-encoding": true - }, - { - "name": "roleAssignmentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the role assignment to delete." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the role assignment.", - "schema": { - "$ref": "#/definitions/RoleAssignment" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/DeleteRoleAssignmentByName.json" - } - } - }, - "put": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_Create", - "description": "Creates a role assignment.", - "parameters": [{ - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope of the role assignment to create. The scope can be any REST resource instance. For example, use '/subscriptions/{subscription-id}/' for a subscription, '/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}' for a resource group, and '/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/{resource-provider}/{resource-type}/{resource-name}' for a resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "roleAssignmentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the role assignment to create. It can be any valid GUID." - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/RoleAssignmentCreateParameters" - }, - "description": "Parameters for the role assignment." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "201": { - "description": "Created - Returns information about the role assignment.", - "schema": { - "$ref": "#/definitions/RoleAssignment" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/PutRoleAssignment.json" - } - } - }, - "get": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_Get", - "description": "Get the specified role assignment.", - "parameters": [{ - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope of the role assignment.", - "x-ms-skip-url-encoding": true - }, - { - "name": "roleAssignmentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the role assignment to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the role assignment.", - "schema": { - "$ref": "#/definitions/RoleAssignment" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetRoleAssignmentByName.json" - } - } - } - }, - "/{roleId}": { - "delete": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_DeleteById", - "description": "Deletes a role assignment.", - "parameters": [{ - "name": "roleId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the role assignment to delete.", - "x-ms-skip-url-encoding": true - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the role assignment.", - "schema": { - "$ref": "#/definitions/RoleAssignment" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/DeleteRoleAssignmentById.json" - } - } - }, - "put": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_CreateById", - "description": "Creates a role assignment by ID.", - "parameters": [{ - "name": "roleId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the role assignment to create.", - "x-ms-skip-url-encoding": true - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/RoleAssignmentCreateParameters" - }, - "description": "Parameters for the role assignment." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "201": { - "description": "Created - Returns the role assignment.", - "schema": { - "$ref": "#/definitions/RoleAssignment" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/PutRoleAssignmentById.json" - } - } - }, - "get": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_GetById", - "description": "Gets a role assignment by ID.", - "parameters": [{ - "name": "roleId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the role assignment to get.", - "x-ms-skip-url-encoding": true - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the role assignment.", - "schema": { - "$ref": "#/definitions/RoleAssignment" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetRoleAssignmentById.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/roleAssignments": { - "get": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_List", - "description": "Gets all role assignments for the subscription.", - "parameters": [{ - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of role assignments.", - "schema": { - "$ref": "#/definitions/RoleAssignmentListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/RoleAssignmentFilter", - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetAllRoleAssignments.json" - } - } - } - }, - "/{scope}/providers/Microsoft.Authorization/roleAssignments": { - "get": { - "tags": [ - "RoleAssignments" - ], - "operationId": "RoleAssignments_ListForScope", - "description": "Gets role assignments for a scope.", - "parameters": [{ - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope of the role assignments.", - "x-ms-skip-url-encoding": true - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of role assignments.", - "schema": { - "$ref": "#/definitions/RoleAssignmentListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/RoleAssignmentFilter", - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetRoleAssignmentByScope.json" - } - } - } - }, - "/{scope}/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId}": { - "delete": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_Delete", - "description": "Deletes a role definition.", - "parameters": [{ - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope of the role definition.", - "x-ms-skip-url-encoding": true - }, - { - "name": "roleDefinitionId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the role definition to delete." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the role definition.", - "schema": { - "$ref": "#/definitions/RoleDefinition" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/DeleteRoleDefinition.json" - } - } - }, - "get": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_Get", - "description": "Get role definition by name (GUID).", - "parameters": [{ - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope of the role definition.", - "x-ms-skip-url-encoding": true - }, - { - "name": "roleDefinitionId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the role definition." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the role definition.", - "schema": { - "$ref": "#/definitions/RoleDefinition" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetRoleDefinitionByName.json" - } - } - }, - "put": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_CreateOrUpdate", - "description": "Creates or updates a role definition.", - "parameters": [{ - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope of the role definition.", - "x-ms-skip-url-encoding": true - }, - { - "name": "roleDefinitionId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the role definition." - }, - { - "name": "roleDefinition", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/RoleDefinition" - }, - "description": "The values for the role definition." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "201": { - "description": "OK - Returns information about the role definition.", - "schema": { - "$ref": "#/definitions/RoleDefinition" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/PutRoleDefinition.json" - } - } - } - }, - "/{scope}/providers/Microsoft.Authorization/roleDefinitions": { - "get": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_List", - "description": "Get all role definitions that are applicable at scope and above.", - "parameters": [{ - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope of the role definition.", - "x-ms-skip-url-encoding": true - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. Use atScopeAndBelow filter to search below the given scope as well." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of role definitions.", - "schema": { - "$ref": "#/definitions/RoleDefinitionListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/RoleDefinitionFilter", - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetRoleDefinitionAtScope.json" - } - } - } - } - }, - "x-ms-paths":{ - "/{roleId}?disambiguation_dummy": { - "get": { - "tags": [ - "RoleDefinitions" - ], - "operationId": "RoleDefinitions_GetById", - "description": "Gets a role definition by ID.", - "parameters": [{ - "name": "roleId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified role definition ID. Use the format, /subscriptions/{guid}/providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId} for subscription level role definitions, or /providers/Microsoft.Authorization/roleDefinitions/{roleDefinitionId} for tenant level role definitions.", - "x-ms-skip-url-encoding": true - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the role definition.", - "schema": { - "$ref": "#/definitions/RoleDefinition" - } - } - }, - "x-ms-examples": { - "GetConfigurations": { - "$ref": "./examples/GetRoleDefinitionById.json" - } - } - } - } - }, - "definitions": { - "ProviderOperation": { - "properties": { - "name": { - "type": "string", - "description": "The operation name." - }, - "displayName": { - "type": "string", - "description": "The operation display name." - }, - "description": { - "type": "string", - "description": "The operation description." - }, - "origin": { - "type": "string", - "description": "The operation origin." - }, - "properties": { - "type": "object", - "x-ms-client-flatten": true, - "description": "The operation properties." - }, - "isDataAction": { - "type": "boolean", - "description": "The dataAction flag to specify the operation type." - } - }, - "description": "Operation" - }, - "ResourceType": { - "properties": { - "name": { - "type": "string", - "description": "The resource type name." - }, - "displayName": { - "type": "string", - "description": "The resource type display name." - }, - "operations": { - "type": "array", - "items": { - "$ref": "#/definitions/ProviderOperation" - }, - "description": "The resource type operations." - } - }, - "description": "Resource Type" - }, - "ProviderOperationsMetadata": { - "properties": { - "id": { - "type": "string", - "description": "The provider id." - }, - "name": { - "type": "string", - "description": "The provider name." - }, - "type": { - "type": "string", - "description": "The provider type." - }, - "displayName": { - "type": "string", - "description": "The provider display name." - }, - "resourceTypes": { - "type": "array", - "items": { - "$ref": "#/definitions/ResourceType" - }, - "description": "The provider resource types" - }, - "operations": { - "type": "array", - "items": { - "$ref": "#/definitions/ProviderOperation" - }, - "description": "The provider operations." - } - }, - "description": "Provider Operations metadata" - }, - "ProviderOperationsMetadataListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/ProviderOperationsMetadata" - }, - "description": "The list of providers." - }, - "nextLink": { - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "Provider operations metadata list" - }, - "PermissionGetResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/Permission" - }, - "description": "An array of permissions." - }, - "nextLink": { - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "Permissions information." - }, - "RoleDefinitionFilter": { - "properties": { - "roleName": { - "type": "string", - "description": "Returns role definition with the specific name." - }, - "type": { - "type": "string", - "description": "Returns role definition with the specific type." - } - }, - "description": "Role Definitions filter" - }, - "RoleDefinitionProperties": { - "properties": { - "roleName": { - "type": "string", - "description": "The role name." - }, - "description": { - "type": "string", - "description": "The role definition description." - }, - "type": { - "type": "string", - "description": "The role type.", - "x-ms-client-name": "roleType" - }, - "permissions": { - "type": "array", - "items": { - "$ref": "#/definitions/Permission" - }, - "description": "Role definition permissions." - }, - "assignableScopes": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Role definition assignable scopes." - } - }, - "description": "Role definition properties." - }, - "RoleDefinition": { - "properties": { - "id": { - "type": "string", - "readOnly": true, - "description": "The role definition ID." - }, - "name": { - "type": "string", - "readOnly": true, - "description": "The role definition name." - }, - "type": { - "type": "string", - "readOnly": true, - "description": "The role definition type." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/RoleDefinitionProperties", - "description": "Role definition properties." - } - }, - "description": "Role definition." - }, - "RoleDefinitionListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/RoleDefinition" - }, - "description": "Role definition list." - }, - "nextLink": { - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "Role definition list operation result." - }, - "RoleAssignmentFilter": { - "properties": { - "principalId": { - "type": "string", - "description": "Returns role assignment of the specific principal." - }, - "canDelegate": { - "type": "boolean", - "description": "The Delegation flag for the roleassignment" - } - }, - "description": "Role Assignments filter" - }, - "RoleAssignmentPropertiesWithScope": { - "properties": { - "scope": { - "type": "string", - "description": "The role assignment scope." - }, - "roleDefinitionId": { - "type": "string", - "description": "The role definition ID." - }, - "principalId": { - "type": "string", - "description": "The principal ID." - }, - "canDelegate": { - "type": "boolean", - "description": "The Delegation flag for the roleassignment" - } - }, - "description": "Role assignment properties with scope." - }, - "RoleAssignment": { - "properties": { - "id": { - "type": "string", - "readOnly": true, - "description": "The role assignment ID." - }, - "name": { - "type": "string", - "readOnly": true, - "description": "The role assignment name." - }, - "type": { - "type": "string", - "readOnly": true, - "description": "The role assignment type." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/RoleAssignmentPropertiesWithScope", - "description": "Role assignment properties." - } - }, - "description": "Role Assignments" - }, - "RoleAssignmentListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/RoleAssignment" - }, - "description": "Role assignment list." - }, - "nextLink": { - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "Role assignment list operation result." - }, - "RoleAssignmentProperties": { - "properties": { - "roleDefinitionId": { - "type": "string", - "description": "The role definition ID used in the role assignment." - }, - "principalId": { - "type": "string", - "description": "The principal ID assigned to the role. This maps to the ID inside the Active Directory. It can point to a user, service principal, or security group." - }, - "principalType": { - "type": "string", - "description": "The principal type of the assigned principal ID.", - "enum": [ - "User", - "Group", - "ServicePrincipal", - "Unknown", - "DirectoryRoleTemplate", - "ForeignGroup", - "Application", - "MSI", - "DirectoryObjectOrGroup", - "Everyone" - ], - "x-ms-enum": { - "name": "PrincipalType", - "modelAsString": true - } - }, - "canDelegate": { - "type": "boolean", - "description": "The delgation flag used for creating a role assignment" - } - }, - "required": [ - "roleDefinitionId", - "principalId" - ], - "description": "Role assignment properties." - }, - "RoleAssignmentCreateParameters": { - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/RoleAssignmentProperties", - "description": "Role assignment properties." - } - }, - "required": [ - "properties" - ], - "description": "Role assignment create parameters." - }, - "Permission": { - "properties": { - "actions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Allowed actions." - }, - "notActions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Denied actions." - }, - "dataActions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Allowed Data actions." - }, - "notDataActions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Denied Data actions." - } - }, - "description": "Role definition permissions." - } - }, - "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the target subscription." - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for this operation." - }, - "ResourceGroupNameParameter": { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group.", - "x-ms-parameter-location": "method" - }, - "ResourceProviderNamespaceParameter": { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider.", - "x-ms-parameter-location": "method" - } - } -} \ No newline at end of file diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/DeleteRoleAssignmentById.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/DeleteRoleAssignmentById.json index 8728e7aa38b7..db2fb17446e7 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/DeleteRoleAssignmentById.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/DeleteRoleAssignmentById.json @@ -10,6 +10,7 @@ "properties": { "roleDefinitionId": "/subscriptions/subId/providers/Microsoft.Authorization/roleDefinitions/roledefinitionId", "principalId": "Pid", + "principalType": "Ptype", "scope": "/subscriptions/subId/resourcegroups/rgname", "canDelegate":false }, diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/DeleteRoleAssignmentByName.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/DeleteRoleAssignmentByName.json index ceee8a6e3216..d55443329e02 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/DeleteRoleAssignmentByName.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/DeleteRoleAssignmentByName.json @@ -10,8 +10,9 @@ "properties": { "roleDefinitionId": "/subscriptions/subId/providers/Microsoft.Authorization/roleDefinitions/roledefinitionId", "principalId": "Pid", + "principalType": "Ptype", "scope": "/subscriptions/subId/resourcegroups/rgname", - "canDelegate":false + "canDelegate": false }, "id": "/subscriptions/subId/resourcegroups/rgname/providers/Microsoft.Authorization/roleAssignments/roleassignmentId", "type": "Microsoft.Authorization/roleAssignments", diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetAllRoleAssignments.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetAllRoleAssignments.json index fb5d95543c36..df29cf356b4a 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetAllRoleAssignments.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetAllRoleAssignments.json @@ -11,8 +11,9 @@ "properties": { "roleDefinitionId": "/subscriptions/subId/providers/Microsoft.Authorization/roleDefinitions/roledefinitionId", "principalId": "Pid", + "principalType": "Ptype", "scope": "/subscriptions/subId/resourcegroups/rgname", - "canDelegate":false + "canDelegate": false }, "id": "/subscriptions/subId/resourcegroups/rgname/providers/Microsoft.Authorization/roleAssignments/roleassignmentId", "type": "Microsoft.Authorization/roleAssignments", diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentById.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentById.json index 25e9c928b072..76938ede963e 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentById.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentById.json @@ -9,6 +9,7 @@ "properties": { "roleDefinitionId": "/subscriptions/subId/providers/Microsoft.Authorization/roleDefinitions/roledefinitionId", "principalId": "Pid", + "principalType": "Ptype", "scope": "/subscriptions/subId/resourcegroups/rgname", "canDelegate":false }, diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentByName.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentByName.json index 565c4321d019..236097f49d3f 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentByName.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentByName.json @@ -11,8 +11,9 @@ "properties": { "roleDefinitionId": "/subscriptions/subId/providers/Microsoft.Authorization/roleDefinitions/roledefinitionId", "principalId": "Pid", + "principalType": "Ptype", "scope": "/subscriptions/subId/resourcegroups/rgname", - "canDelegate":false + "canDelegate": false }, "id": "/subscriptions/subId/resourcegroups/rgname/providers/Microsoft.Authorization/roleAssignments/roleassignmentId", "type": "Microsoft.Authorization/roleAssignments", diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentByScope.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentByScope.json index b37258d178bb..ec570a61ce58 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentByScope.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentByScope.json @@ -11,6 +11,7 @@ "properties": { "roleDefinitionId": "/subscriptions/subId/providers/Microsoft.Authorization/roleDefinitions/roledefinitionId", "principalId": "Pid", + "principalType": "Ptype", "scope": "/subscriptions/subId/resourcegroups/rgname", "canDelegate":false }, diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentsForResource.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentsForResource.json index 0464db8bac19..0fe2980d59dc 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentsForResource.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentsForResource.json @@ -16,8 +16,9 @@ "properties": { "roleDefinitionId": "/subscriptions/subId/providers/Microsoft.Authorization/roleDefinitions/roledefinitionId", "principalId": "Pid", + "principalType": "Ptype", "scope": "/subscriptions/subId/resourcegroups/rgname", - "canDelegate":false + "canDelegate": false }, "id": "/subscriptions/subId/resourcegroups/rgname/providers/Microsoft.Authorization/roleAssignments/roleassignmentId", "type": "Microsoft.Authorization/roleAssignments", diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentsForResourceGroup.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentsForResourceGroup.json index 5ef0fb9c83dd..20469c50be0c 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentsForResourceGroup.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/GetRoleAssignmentsForResourceGroup.json @@ -12,8 +12,9 @@ "properties": { "roleDefinitionId": "/subscriptions/subId/providers/Microsoft.Authorization/roleDefinitions/roledefinitionId", "principalId": "Pid", + "principalType": "Ptype", "scope": "/subscriptions/subId/resourcegroups/rgname", - "canDelegate":false + "canDelegate": false }, "id": "/subscriptions/subId/resourcegroups/rgname/providers/Microsoft.Authorization/roleAssignments/roleassignmentId", "type": "Microsoft.Authorization/roleAssignments", diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/PutRoleAssignment.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/PutRoleAssignment.json index 59cdae83f7b3..fee81783787c 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/PutRoleAssignment.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/PutRoleAssignment.json @@ -18,8 +18,9 @@ "properties": { "roleDefinitionId": "/subscriptions/subId/providers/Microsoft.Authorization/roleDefinitions/roledefinitionId", "principalId": "Pid", + "principalType": "Ptype", "scope": "/subscriptions/subId/resourcegroups/rgname", - "canDelegate":false + "canDelegate": false }, "id": "/subscriptions/subId/resourcegroups/rgname/providers/Microsoft.Authorization/roleAssignments/roleassignmentId", "type": "Microsoft.Authorization/roleAssignments", diff --git a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/PutRoleAssignmentById.json b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/PutRoleAssignmentById.json index 8659ad8e2bef..b54ec5fd81bf 100644 --- a/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/PutRoleAssignmentById.json +++ b/specification/authorization/resource-manager/Microsoft.Authorization/preview/2018-09-01-preview/examples/PutRoleAssignmentById.json @@ -7,7 +7,7 @@ "roleDefinitionId": "/subscriptions/4004a9fd-d58e-48dc-aeb2-4a4aec58606f/providers/Microsoft.Authorization/roleDefinitions/de139f84-1756-47ae-9be6-808fbbe84772", "principalId": "d93a38bc-d029-4160-bfb0-fbda779ac214", "principalType": "User", - "canDelegate":false + "canDelegate": false } }, "api-version": "2018-09-01-preview" @@ -18,6 +18,7 @@ "properties": { "roleDefinitionId": "/subscriptions/subId/providers/Microsoft.Authorization/roleDefinitions/roledefinitionId", "principalId": "Pid", + "principalType": "Ptype", "scope": "/subscriptions/subId/resourcegroups/rgname", "canDelegate":false }, diff --git a/specification/authorization/resource-manager/readme.go.md b/specification/authorization/resource-manager/readme.go.md index d0461c583f4e..a55a9ddeb1a8 100644 --- a/specification/authorization/resource-manager/readme.go.md +++ b/specification/authorization/resource-manager/readme.go.md @@ -53,4 +53,4 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2018-09-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.authorization.v2018_09_01_preview + output-folder: $(azure-libraries-for-java-folder)/authorization/resource-manager/v2018_09_01_preview +regenerate-manager: true +generate-interface: true ``` ### Tag: package-2015-07 and java diff --git a/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/Alert.json b/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/Alert.json index 4833a35d70a7..87a98d6aabcf 100644 --- a/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/Alert.json +++ b/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/Alert.json @@ -9,6 +9,12 @@ "schemes": [ "https" ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "paths": { "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.InfrastructureInsights.Admin/regionHealths/{location}/alerts": { "get": { @@ -50,13 +56,7 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/Alert", - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ] + "x-ms-odata": "#/definitions/Alert" } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.InfrastructureInsights.Admin/regionHealths/{location}/alerts/{alertName}": { @@ -95,13 +95,7 @@ "$ref": "#/definitions/Alert" } } - }, - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ] + } }, "put": { "x-ms-examples": { @@ -144,13 +138,47 @@ "$ref": "#/definitions/Alert" } } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.InfrastructureInsights.Admin/regionHealths/{location}/alerts/{alertName}/repair": { + "post": { + "x-ms-examples": { + "Repairs an alert.": { + "$ref": "./examples/Alert/Repair.json" + } }, - "produces": [ - "application/json" + "tags": [ + "Alerts" + ], + "x-ms-long-running-operation": true, + "description": "Repairs an alert.", + "operationId": "Alerts_Repair", + "parameters": [ + { + "$ref": "InfrastructureInsights.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "InfrastructureInsights.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "InfrastructureInsights.json#/parameters/LocationParameter" + }, + { + "$ref": "#/parameters/AlertNameParameter" + }, + { + "$ref": "InfrastructureInsights.json#/parameters/ApiVersionParameter" + } ], - "consumes": [ - "application/json" - ] + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "ACCEPTED" + } + } } } }, @@ -250,6 +278,10 @@ "closedByUserAlias": { "description": "User alias who closed the alert.", "type": "string" + }, + "hasValidRemediationAction": { + "description": "Indicates if the alert can be remediated.", + "type": "boolean" } } }, diff --git a/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/examples/Alert/Repair.json b/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/examples/Alert/Repair.json new file mode 100644 index 000000000000..2054303645dd --- /dev/null +++ b/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/examples/Alert/Repair.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "resourceGroupName": "System.local", + "location": "local", + "alertName": "ca55be03-9be9-4deb-8467-e890ab1d116b", + "api-version": "2016-05-01" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2016-05-01/acquisitions.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2016-05-01/acquisitions.json index 450e958a171b..8aaa8b45b58b 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2016-05-01/acquisitions.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2016-05-01/acquisitions.json @@ -19,7 +19,7 @@ "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Storage.Admin/farms/{farmId}/acquisitions": { "get": { "x-ms-examples": { - "Returns a list of page BLOB acquistions.": { + "Returns a list of page BLOB acquisitions.": { "$ref": "./examples/Acquisitions/List.json" } }, @@ -27,7 +27,7 @@ "Acquisitions" ], "operationId": "Acquisitions_List", - "description": "Returns a list of BLOB acquistions.", + "description": "Returns a list of BLOB acquisitions.", "parameters": [ { "$ref": "storage.json#/parameters/SubscriptionIdParameter" @@ -107,7 +107,7 @@ "readOnly": true }, "container": { - "description": "The container associated with the the page BLOB.", + "description": "The container associated with the page BLOB.", "type": "string", "readOnly": true }, diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json index 7051a6d54164..d6bd6db99e6d 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json @@ -627,11 +627,6 @@ "name": "Deleted", "value": "Deleted" }, - { - "description": "The String.", - "name": "Deleted", - "value": "Deleted" - }, { "description": "This state is not used in Azure Stack.", "name": "NotDefined", diff --git a/specification/azure-kusto/resource-manager/readme.go.md b/specification/azure-kusto/resource-manager/readme.go.md new file mode 100644 index 000000000000..b0bb13f333c9 --- /dev/null +++ b/specification/azure-kusto/resource-manager/readme.go.md @@ -0,0 +1,26 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +``` yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + namespace: kusto + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2018-09-07-preview +``` + +### Tag: package-2018-09-07-preview and go + +These settings apply only when `--tag=package-2018-09-07-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2018-09-07-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2018-09-07-preview/$(namespace) +``` diff --git a/specification/azure-kusto/resource-manager/readme.md b/specification/azure-kusto/resource-manager/readme.md index c52c08776f31..4ef174cc472c 100644 --- a/specification/azure-kusto/resource-manager/readme.md +++ b/specification/azure-kusto/resource-manager/readme.md @@ -82,6 +82,7 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-python + - repo: azure-sdk-for-go ``` ## C# diff --git a/specification/azure-kusto/resource-manager/readme.nodejs.md b/specification/azure-kusto/resource-manager/readme.nodejs.md new file mode 100644 index 000000000000..98411ab9115e --- /dev/null +++ b/specification/azure-kusto/resource-manager/readme.nodejs.md @@ -0,0 +1,14 @@ +## Node.js + +These settings apply only when `--nodejs` is specified on the command line. +Please also specify `--node-sdks-folder=`. + +``` yaml $(nodejs) +nodejs: + azure-arm: true + package-name: azure-arm-kusto + output-folder: $(node-sdks-folder)/lib/services/kustoManagement + generate-license-txt: true + generate-package-json: true + generate-readme-md: true +``` diff --git a/specification/azure-kusto/resource-manager/readme.typescript.md b/specification/azure-kusto/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..727fef1297c6 --- /dev/null +++ b/specification/azure-kusto/resource-manager/readme.typescript.md @@ -0,0 +1,12 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +``` yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/arm-kusto" + output-folder: "$(typescript-sdks-folder)/packages/@azure/arm-kusto" + generate-metadata: true +``` diff --git a/specification/batchai/resource-manager/Microsoft.BatchAI/preview/2017-09-01-preview/BatchAI.json b/specification/batchai/resource-manager/Microsoft.BatchAI/preview/2017-09-01-preview/BatchAI.json index e83b90775a23..e8c17995178c 100644 --- a/specification/batchai/resource-manager/Microsoft.BatchAI/preview/2017-09-01-preview/BatchAI.json +++ b/specification/batchai/resource-manager/Microsoft.BatchAI/preview/2017-09-01-preview/BatchAI.json @@ -236,7 +236,7 @@ ], "responses": { "200": { - "description": "The operation was successful. The response contains information abouth the cluster.", + "description": "The operation was successful. The response contains information about the cluster.", "schema": { "$ref": "#/definitions/Cluster" } @@ -1518,7 +1518,7 @@ "NodeSetup": { "properties": { "setupTask": { - "title": "Specifies a setup task which can be used to customize the compute nodes of the cluster. The NodeSetup task runs everytime a VM is rebooted. For that reason the task code needs to be idempotent. Generally it is used to either download static data that is required for all jobs that run on the cluster VMs or to download/install software.", + "title": "Specifies a setup task which can be used to customize the compute nodes of the cluster. The NodeSetup task runs every time a VM is rebooted. For that reason the task code needs to be idempotent. Generally it is used to either download static data that is required for all jobs that run on the cluster VMs or to download/install software.", "$ref": "#/definitions/SetupTask" }, "mountVolumes": { @@ -1608,7 +1608,7 @@ "vmPriority": { "type": "string", "title": "dedicated or lowpriority.", - "description": "The default value is dedicated. The node can get preempted while the task is running if lowpriority is choosen. This is best suited if the workload is checkpointing and can be restarted.", + "description": "The default value is dedicated. The node can get preempted while the task is running if lowpriority is chosen. This is best suited if the workload is checkpointing and can be restarted.", "default": "dedicated", "enum": [ "dedicated", @@ -1997,7 +1997,7 @@ "executionState": { "type": "string", "title": "The current state of the job.", - "description": "The current state of the job. Possible values are: queued - The job is queued and able to run. A job enters this state when it is created, or when it is awaiting a retry after a failed run. running - The job is running on a compute cluster. This includes job-level preparation such as downloading resource files or set up container specified on the job - it does not necessarily mean that the job command line has started executing. terminating - The job is terminated by the user, the terminate operation is in progress. succeeded - The job has completed running succesfully and exited with exit code 0. failed - The job has finished unsuccessfully (failed with a non-zero exit code) and has exhausted its retry limit. A job is also marked as failed if an error occurred launching the job.", + "description": "The current state of the job. Possible values are: queued - The job is queued and able to run. A job enters this state when it is created, or when it is awaiting a retry after a failed run. running - The job is running on a compute cluster. This includes job-level preparation such as downloading resource files or set up container specified on the job - it does not necessarily mean that the job command line has started executing. terminating - The job is terminated by the user, the terminate operation is in progress. succeeded - The job has completed running successfully and exited with exit code 0. failed - The job has finished unsuccessfully (failed with a non-zero exit code) and has exhausted its retry limit. A job is also marked as failed if an error occurred launching the job.", "enum": [ "queued", "running", @@ -2148,7 +2148,7 @@ }, "downloadUrl": { "type": "string", - "title": "file downloand url, example: https://mystg.blob.core.windows.net/mycontainer/myModel_1.dnn", + "title": "file download url, example: https://mystg.blob.core.windows.net/mycontainer/myModel_1.dnn", "description": "This will be returned only if the model has been archived. During job run, this won't be returned and customers can use SSH tunneling to download. Users can use Get Remote Login Information API to get the IP address and port information of all the compute nodes running the job." }, "properties": { @@ -2740,7 +2740,7 @@ "parameterServerCount": { "type": "integer", "format": "int32", - "title": "The number of parmeter server tasks.", + "title": "The number of parameter server tasks.", "description": "If specified, the value must be less than or equal to nodeCount. If not specified, the default value is equal to 1 for distributed TensorFlow training (This property is not applicable for single machine training). This property can be specified only for distributed TensorFlow training." } }, @@ -2929,7 +2929,7 @@ "required": false, "type": "string", "x-ms-parameter-location": "method", - "description": "An OData $select clause. Used to select the properties to be returned in the GET respnose.", + "description": "An OData $select clause. Used to select the properties to be returned in the GET response.", "x-ms-parameter-grouping": { "postfix": "Options" } @@ -2940,7 +2940,7 @@ "required": false, "type": "string", "x-ms-parameter-location": "method", - "description": "An OData $filter clause.. Used to filter results that are returned in the GET respnose.", + "description": "An OData $filter clause. Used to filter results that are returned in the GET response.", "x-ms-parameter-grouping": { "postfix": "Options" } diff --git a/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-03-01/BatchAI.json b/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-03-01/BatchAI.json index 84836c0b7c61..d345634f139e 100644 --- a/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-03-01/BatchAI.json +++ b/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-03-01/BatchAI.json @@ -277,7 +277,7 @@ ], "responses": { "200": { - "description": "The operation was successful. The response contains information abouth the cluster.", + "description": "The operation was successful. The response contains information about the cluster.", "schema": { "$ref": "#/definitions/Cluster" } @@ -1656,7 +1656,7 @@ }, "instrumentationKeySecretReference": { "title": "Specifies a KeyVault Secret containing Azure Application Insights instrumentation key.", - "description": "Specifies KeyVault Store and Secret which contains Azure Application Insights instrumentation key. One of instumentationKey or instrumentationKeySecretReference must be specified.", + "description": "Specifies KeyVault Store and Secret which contains Azure Application Insights instrumentation key. One of instrumentationKey or instrumentationKeySecretReference must be specified.", "$ref": "#/definitions/KeyVaultSecretReference" } }, @@ -1668,7 +1668,7 @@ "NodeSetup": { "properties": { "setupTask": { - "title": "Specifies a setup task which can be used to customize the compute nodes of the cluster. The NodeSetup task runs everytime a VM is rebooted. For that reason the task code needs to be idempotent. Generally it is used to either download static data that is required for all jobs that run on the cluster VMs or to download/install software.", + "title": "Specifies a setup task which can be used to customize the compute nodes of the cluster. The NodeSetup task runs every time a VM is rebooted. For that reason the task code needs to be idempotent. Generally it is used to either download static data that is required for all jobs that run on the cluster VMs or to download/install software.", "$ref": "#/definitions/SetupTask" }, "mountVolumes": { @@ -1717,7 +1717,7 @@ "stdOutErrPathSuffix": { "type": "string", "title": "A path segment appended by Batch AI to stdOutErrPathPrefix to form a path where stdout and stderr of the setup task will be uploaded.", - "description": "Batch AI creates the setup task output directories under an unique path to avoid conflicts between different clusters. You can concatinate stdOutErrPathPrefix and stdOutErrPathSuffix to get the full path to the output directory.", + "description": "Batch AI creates the setup task output directories under an unique path to avoid conflicts between different clusters. You can concatenate stdOutErrPathPrefix and stdOutErrPathSuffix to get the full path to the output directory.", "readOnly": true } }, @@ -1778,7 +1778,7 @@ "vmPriority": { "type": "string", "title": "dedicated or lowpriority.", - "description": "The default value is dedicated. The node can get preempted while the task is running if lowpriority is choosen. This is best suited if the workload is checkpointing and can be restarted.", + "description": "The default value is dedicated. The node can get preempted while the task is running if lowpriority is chosen. This is best suited if the workload is checkpointing and can be restarted.", "default": "dedicated", "enum": [ "dedicated", @@ -1930,7 +1930,7 @@ }, "mountVolumes": { "title": "Information on mount volumes to be used by the job.", - "description": "These volumes will be mounted before the job execution and will be unmouted after the job completion. The volumes will be mounted at location specified by $AZ_BATCHAI_JOB_MOUNT_ROOT environment variable.", + "description": "These volumes will be mounted before the job execution and will be unmounted after the job completion. The volumes will be mounted at location specified by $AZ_BATCHAI_JOB_MOUNT_ROOT environment variable.", "$ref": "#/definitions/MountVolumes" }, "nodeCount": { @@ -2074,7 +2074,7 @@ }, "mountVolumes": { "title": "Information on mount volumes to be used by the job.", - "description": "These volumes will be mounted before the job execution and will be unmouted after the job completion. The volumes will be mounted at location specified by $AZ_BATCHAI_JOB_MOUNT_ROOT environment variable.", + "description": "These volumes will be mounted before the job execution and will be unmounted after the job completion. The volumes will be mounted at location specified by $AZ_BATCHAI_JOB_MOUNT_ROOT environment variable.", "$ref": "#/definitions/MountVolumes" }, "jobOutputDirectoryPathSegment": { @@ -2206,7 +2206,7 @@ "executionState": { "type": "string", "title": "The current state of the job.", - "description": "The current state of the job. Possible values are: queued - The job is queued and able to run. A job enters this state when it is created, or when it is awaiting a retry after a failed run. running - The job is running on a compute cluster. This includes job-level preparation such as downloading resource files or set up container specified on the job - it does not necessarily mean that the job command line has started executing. terminating - The job is terminated by the user, the terminate operation is in progress. succeeded - The job has completed running succesfully and exited with exit code 0. failed - The job has finished unsuccessfully (failed with a non-zero exit code) and has exhausted its retry limit. A job is also marked as failed if an error occurred launching the job.", + "description": "The current state of the job. Possible values are: queued - The job is queued and able to run. A job enters this state when it is created, or when it is awaiting a retry after a failed run. running - The job is running on a compute cluster. This includes job-level preparation such as downloading resource files or set up container specified on the job - it does not necessarily mean that the job command line has started executing. terminating - The job is terminated by the user, the terminate operation is in progress. succeeded - The job has completed running successfully and exited with exit code 0. failed - The job has finished unsuccessfully (failed with a non-zero exit code) and has exhausted its retry limit. A job is also marked as failed if an error occurred launching the job.", "enum": [ "queued", "running", @@ -2742,7 +2742,7 @@ "relativeMountPath": { "type": "string", "title": "Specifies the relative path on the compute node where the File Server will be mounted.", - "description": "Note that all cluster level file servers will be mounted under $AZ_BATCHAI_MOUNT_ROOT location and job level file servers will be mouted under $AZ_BATCHAI_JOB_MOUNT_ROOT." + "description": "Note that all cluster level file servers will be mounted under $AZ_BATCHAI_MOUNT_ROOT location and job level file servers will be mounted under $AZ_BATCHAI_JOB_MOUNT_ROOT." }, "mountOptions": { "type": "string", @@ -3005,7 +3005,7 @@ "parameterServerCount": { "type": "integer", "format": "int32", - "title": "The number of parmeter server tasks.", + "title": "The number of parameter server tasks.", "description": "If specified, the value must be less than or equal to nodeCount. If not specified, the default value is equal to 1 for distributed TensorFlow training (This property is not applicable for single machine training). This property can be specified only for distributed TensorFlow training." } }, @@ -3193,7 +3193,7 @@ "required": false, "type": "string", "x-ms-parameter-location": "method", - "description": "An OData $select clause. Used to select the properties to be returned in the GET respnose.", + "description": "An OData $select clause. Used to select the properties to be returned in the GET response.", "x-ms-parameter-grouping": { "postfix": "Options" } @@ -3204,7 +3204,7 @@ "required": false, "type": "string", "x-ms-parameter-location": "method", - "description": "An OData $filter clause.. Used to filter results that are returned in the GET respnose.", + "description": "An OData $filter clause. Used to filter results that are returned in the GET response.", "x-ms-parameter-grouping": { "postfix": "Options" } diff --git a/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/BatchAI.json b/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/BatchAI.json index 1d9b509e78b9..413ea519953c 100644 --- a/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/BatchAI.json +++ b/specification/batchai/resource-manager/Microsoft.BatchAI/stable/2018-05-01/BatchAI.json @@ -1606,7 +1606,7 @@ "properties": { "sourceVault": { "title": "Key Vault resource identifier.", - "description": "Fully qualified resource indentifier of the Key Vault.", + "description": "Fully qualified resource identifier of the Key Vault.", "$ref": "#/definitions/ResourceId" }, "secretUrl": { @@ -2297,7 +2297,7 @@ }, "mountVolumes": { "title": "Mount volumes.", - "description": "Information on mount volumes to be used by the job. These volumes will be mounted before the job execution and will be unmouted after the job completion. The volumes will be mounted at location specified by $AZ_BATCHAI_JOB_MOUNT_ROOT environment variable.", + "description": "Information on mount volumes to be used by the job. These volumes will be mounted before the job execution and will be unmounted after the job completion. The volumes will be mounted at location specified by $AZ_BATCHAI_JOB_MOUNT_ROOT environment variable.", "$ref": "#/definitions/MountVolumes" }, "nodeCount": { @@ -2452,7 +2452,7 @@ }, "mountVolumes": { "title": "Mount volumes.", - "description": "Collection of mount volumes available to the job during execution. These volumes are mounted before the job execution and unmouted after the job completion. The volumes are mounted at location specified by $AZ_BATCHAI_JOB_MOUNT_ROOT environment variable.", + "description": "Collection of mount volumes available to the job during execution. These volumes are mounted before the job execution and unmounted after the job completion. The volumes are mounted at location specified by $AZ_BATCHAI_JOB_MOUNT_ROOT environment variable.", "$ref": "#/definitions/MountVolumes" }, "nodeCount": { @@ -2602,7 +2602,7 @@ "readOnly": true, "type": "string", "title": "Execution state.", - "description": "The current state of the job. Possible values are: queued - The job is queued and able to run. A job enters this state when it is created, or when it is awaiting a retry after a failed run. running - The job is running on a compute cluster. This includes job-level preparation such as downloading resource files or set up container specified on the job - it does not necessarily mean that the job command line has started executing. terminating - The job is terminated by the user, the terminate operation is in progress. succeeded - The job has completed running succesfully and exited with exit code 0. failed - The job has finished unsuccessfully (failed with a non-zero exit code) and has exhausted its retry limit. A job is also marked as failed if an error occurred launching the job.", + "description": "The current state of the job. Possible values are: queued - The job is queued and able to run. A job enters this state when it is created, or when it is awaiting a retry after a failed run. running - The job is running on a compute cluster. This includes job-level preparation such as downloading resource files or set up container specified on the job - it does not necessarily mean that the job command line has started executing. terminating - The job is terminated by the user, the terminate operation is in progress. succeeded - The job has completed running successfully and exited with exit code 0. failed - The job has finished unsuccessfully (failed with a non-zero exit code) and has exhausted its retry limit. A job is also marked as failed if an error occurred launching the job.", "enum": [ "queued", "running", @@ -3041,7 +3041,7 @@ "id": { "type": "string", "title": "ID.", - "description": "The ID of the output directory. The job can use AZ_BATCHAI_OUTPUT_ environment variale to find the directory path, where is the value of id attribute." + "description": "The ID of the output directory. The job can use AZ_BATCHAI_OUTPUT_ environment variable to find the directory path, where is the value of id attribute." }, "pathPrefix": { "type": "string", @@ -3196,7 +3196,7 @@ "description": "The relative path on the compute node where the unmanaged file system will be mounted. Note that all cluster level unmanaged file systems will be mounted under $AZ_BATCHAI_MOUNT_ROOT location and all job level unmanaged file systems will be mounted under $AZ_BATCHAI_JOB_MOUNT_ROOT." } }, - "description": "Unmananged file system mounting configuration.", + "description": "Unmanaged file system mounting configuration.", "required": [ "mountCommand", "relativeMountPath" diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/billing.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/billing.json new file mode 100644 index 000000000000..069933f95a46 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/billing.json @@ -0,0 +1,1381 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-08-01-preview", + "title": "BillingManagementClient", + "description": "Billing client provides access to billing resources for Azure subscriptions." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.Billing/enrollmentAccounts": { + "get": { + "tags": [ + "EnrollmentAccounts" + ], + "x-ms-examples": { + "EnrollmentAccountsList": { + "$ref": "./examples/EnrollmentAccountsList.json" + } + }, + "operationId": "EnrollmentAccounts_List", + "description": "Lists the enrollment accounts the caller has access to.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnrollmentAccountListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/enrollmentAccounts/{name}": { + "get": { + "tags": [ + "EnrollmentAccounts" + ], + "x-ms-examples": { + "EnrollmentAccountsGet": { + "$ref": "./examples/EnrollmentAccountsGet.json" + } + }, + "operationId": "EnrollmentAccounts_Get", + "description": "Gets a enrollment account by name.", + "parameters": [ + { + "name": "name", + "in": "path", + "description": "Enrollment Account name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnrollmentAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingPeriods": { + "get": { + "tags": [ + "BillingPeriods" + ], + "operationId": "BillingPeriods_List", + "description": "Lists the available billing periods for a subscription in reverse chronological order. This is only supported for Azure Web-Direct subscriptions. Other subscription types which were not purchased directly through the Azure web portal are not supported through this preview API.", + "externalDocs": { + "url": "https://go.microsoft.com/fwlink/?linkid=844490" + }, + "x-ms-examples": { + "BillingPeriodsList": { + "$ref": "./examples/BillingPeriodsList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "$filter", + "description": "May be used to filter billing periods by billingPeriodEndDate. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$skiptoken", + "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$top", + "description": "May be used to limit the number of results to the most recent N billing periods.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 100 + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/BillingPeriodsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}": { + "get": { + "tags": [ + "BillingPeriods" + ], + "operationId": "BillingPeriods_Get", + "description": "Gets a named billing period. This is only supported for Azure Web-Direct subscriptions. Other subscription types which were not purchased directly through the Azure web portal are not supported through this preview API.", + "x-ms-examples": { + "BillingPeriodsGet": { + "$ref": "./examples/BillingPeriodsGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "billingPeriodName", + "description": "The name of a BillingPeriod resource.", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/BillingPeriod" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/invoices": { + "get": { + "tags": [ + "Invoices" + ], + "operationId": "Invoices_List", + "description": "Lists the available invoices for a subscription in reverse chronological order beginning with the most recent invoice. In preview, invoices are available via this API only for invoice periods which end December 1, 2016 or later. This is only supported for Azure Web-Direct subscriptions. Other subscription types which were not purchased directly through the Azure web portal are not supported through this preview API.", + "externalDocs": { + "url": "https://go.microsoft.com/fwlink/?linkid=842057" + }, + "x-ms-examples": { + "InvoicesList": { + "$ref": "./examples/InvoicesList.json" + }, + "InvoicesExpand": { + "$ref": "./examples/InvoicesExpand.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "$expand", + "description": "May be used to expand the downloadUrl property within a list of invoices. This enables download links to be generated for multiple invoices at once. By default, downloadURLs are not included when listing invoices.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "description": "May be used to filter invoices by invoicePeriodEndDate. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$skiptoken", + "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$top", + "description": "May be used to limit the number of results to the most recent N invoices.", + "in": "query", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 100 + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/InvoicesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/invoices/{invoiceName}": { + "get": { + "tags": [ + "Invoices" + ], + "operationId": "Invoices_Get", + "description": "Gets a named invoice resource. When getting a single invoice, the downloadUrl property is expanded automatically. This is only supported for Azure Web-Direct subscriptions. Other subscription types which were not purchased directly through the Azure web portal are not supported through this preview API.", + "x-ms-examples": { + "InvoicesGet": { + "$ref": "./examples/InvoicesGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "invoiceName", + "description": "The name of an invoice resource.", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Invoice" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/invoices/latest": { + "get": { + "tags": [ + "Invoices" + ], + "operationId": "Invoices_GetLatest", + "description": "Gets the most recent invoice. When getting a single invoice, the downloadUrl property is expanded automatically. This is only supported for Azure Web-Direct subscriptions. Other subscription types which were not purchased directly through the Azure web portal are not supported through this preview API.", + "x-ms-examples": { + "InvoicesGetLatest": { + "$ref": "./examples/InvoicesGetLatest.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Invoice" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists all of the available billing REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}/initiateTransfer": { + "post": { + "description": "Initiates the request to transfer the GTM or legacy subscriptions or RIs to GTM.", + "operationId": "Transfer_Initiate", + "x-ms-examples": { + "InitiateTransfer": { + "$ref": "./examples/InitiateTransfer.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/BillingAccountIdParameter" + }, + { + "$ref": "#/parameters/InvoiceSectionIdParameter" + }, + { + "$ref": "#/parameters/InitiateTransferRequestParameter" + } + ], + "tags": [ + "AIPController" + ], + "responses": { + "200": { + "description": "Initiated transfer details.", + "schema": { + "$ref": "#/definitions/TransferDetails" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}/transfers/{transferId}": { + "get": { + "description": "Gets the transfer details for given transfer Id.", + "operationId": "Transfer_Get", + "x-ms-examples": { + "TransferGet": { + "$ref": "./examples/GetTransfer.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/BillingAccountIdParameter" + }, + { + "$ref": "#/parameters/InvoiceSectionIdParameter" + }, + { + "$ref": "#/parameters/TransferIdParameter" + } + ], + "tags": [ + "AIPController" + ], + "responses": { + "200": { + "description": "Details of transfer.", + "schema": { + "$ref": "#/definitions/TransferDetails" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "description": "Cancels the transfer for given transfer Id.", + "operationId": "Transfer_Cancel", + "x-ms-examples": { + "TransferCancel": { + "$ref": "./examples/CancelTransfer.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/BillingAccountIdParameter" + }, + { + "$ref": "#/parameters/InvoiceSectionIdParameter" + }, + { + "$ref": "#/parameters/TransferIdParameter" + } + ], + "tags": [ + "AIPController" + ], + "responses": { + "200": { + "description": "Details of canceled transfer.", + "schema": { + "$ref": "#/definitions/TransferDetails" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/invoiceSections/{invoiceSectionId}/transfers": { + "get": { + "description": "Lists all transfer's details initiated from given invoice section.", + "operationId": "Transfers_List", + "x-ms-examples": { + "TransfersList": { + "$ref": "./examples/ListTransfers.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/BillingAccountIdParameter" + }, + { + "$ref": "#/parameters/InvoiceSectionIdParameter" + } + ], + "tags": [ + "AIPController" + ], + "responses": { + "200": { + "description": "List of transfers initiated from this invoice section.", + "schema": { + "$ref": "#/definitions/TransferDetailsListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Billing/transfers/{transferId}/acceptTransfer": { + "post": { + "summary": "Accepts the transfer with given transfer Id.", + "operationId": "Transfer_Accept", + "x-ms-examples": { + "AcceptTransfer": { + "$ref": "./examples/AcceptTransfer.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/TransferIdParameter" + }, + { + "$ref": "#/parameters/AcceptTransferRequestParameter" + } + ], + "tags": [ + "AIPController" + ], + "responses": { + "200": { + "description": "Details of the accepted transfer.", + "schema": { + "$ref": "#/definitions/RecipientTransferDetails" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/transfers/{transferId}/declineTransfer": { + "post": { + "summary": "Declines the transfer with given transfer Id.", + "operationId": "Transfer_Decline", + "x-ms-examples": { + "DeclineTransfer": { + "$ref": "./examples/DeclineTransfer.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/TransferIdParameter" + } + ], + "tags": [ + "AIPController" + ], + "responses": { + "200": { + "description": "Details of the declined transfer.", + "schema": { + "$ref": "#/definitions/RecipientTransferDetails" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/transfers/{transferId}/": { + "get": { + "summary": "Gets the transfer with given transfer Id.", + "operationId": "RecipientTransfer_Get", + "x-ms-examples": { + "RecipientTransferGet": { + "$ref": "./examples/GetRecipientTransfer.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/TransferIdParameter" + } + ], + "tags": [ + "AIPController" + ], + "responses": { + "200": { + "description": "Details of the transfers with given Id.", + "schema": { + "$ref": "#/definitions/RecipientTransferDetails" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/transfers": { + "get": { + "summary": "Lists the transfers received by caller.", + "operationId": "RecipientTransfer_List", + "x-ms-examples": { + "RecipientTransfersList": { + "$ref": "./examples/ListRecipientTransfers.json" + } + }, + "tags": [ + "AIPController" + ], + "responses": { + "200": { + "description": "List of transfers received by caller.", + "schema": { + "$ref": "#/definitions/RecipientTransferDetailsListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "EnrollmentAccount": { + "description": "An enrollment account resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "An enrollment account.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/EnrollmentAccountProperties" + } + } + }, + "EnrollmentAccountListResult": { + "description": "Result of listing enrollment accounts.", + "properties": { + "value": { + "description": "The list of enrollment accounts.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/EnrollmentAccount" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "EnrollmentAccountProperties": { + "description": "The properties of the enrollment account.", + "properties": { + "principalName": { + "description": "The account owner's principal name.", + "type": "string", + "readOnly": true + } + } + }, + "BillingPeriod": { + "description": "A billing period resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "A billing period.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/BillingPeriodProperties" + } + } + }, + "BillingPeriodsListResult": { + "description": "Result of listing billing periods. It contains a list of available billing periods in reverse chronological order.", + "properties": { + "value": { + "description": "The list of billing periods.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/BillingPeriod" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "BillingPeriodProperties": { + "description": "The properties of the billing period.", + "properties": { + "billingPeriodStartDate": { + "description": "The start of the date range covered by the billing period.", + "type": "string", + "format": "date", + "readOnly": true + }, + "billingPeriodEndDate": { + "description": "The end of the date range covered by the billing period.", + "type": "string", + "format": "date", + "readOnly": true + }, + "invoiceIds": { + "description": "Array of invoice ids that associated with.", + "type": "array", + "readOnly": true, + "items": { + "type": "string" + } + } + } + }, + "DownloadUrl": { + "description": "A secure URL that can be used to download a PDF invoice until the URL expires.", + "properties": { + "expiryTime": { + "description": "The time in UTC at which this download URL will expire.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "url": { + "description": "The URL to the PDF file.", + "type": "string", + "readOnly": true + } + } + }, + "ErrorDetails": { + "description": "The details of the error.", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string", + "readOnly": true + }, + "target": { + "description": "The target of the particular error.", + "type": "string", + "readOnly": true + } + } + }, + "ErrorResponse": { + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "Invoice": { + "description": "An invoice resource can be used download a PDF version of an invoice.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "An invoice.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/InvoiceProperties" + } + } + }, + "InvoicesListResult": { + "description": "Result of listing invoices. It contains a list of available invoices in reverse chronological order.", + "properties": { + "value": { + "description": "The list of invoices.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Invoice" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "InvoiceProperties": { + "description": "The properties of the invoice.", + "properties": { + "downloadUrl": { + "description": "A secure link to download the PDF version of an invoice. The link will cease to work after its expiry time is reached.", + "$ref": "#/definitions/DownloadUrl" + }, + "invoicePeriodStartDate": { + "description": "The start of the date range covered by the invoice.", + "type": "string", + "format": "date", + "readOnly": true + }, + "invoicePeriodEndDate": { + "description": "The end of the date range covered by the invoice.", + "type": "string", + "format": "date", + "readOnly": true + }, + "billingPeriodIds": { + "description": "Array of billing perdiod ids that the invoice is attributed to.", + "type": "array", + "readOnly": true, + "items": { + "type": "string" + } + } + } + }, + "Operation": { + "description": "A Billing REST API operation.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string", + "readOnly": true + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft.Billing.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "Resource on which the operation is performed: Invoice, etc.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string", + "readOnly": true + } + } + } + } + }, + "OperationListResult": { + "description": "Result listing billing operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "description": "List of billing operations supported by the Microsoft.Billing resource provider.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "URL to get the next set of operation list results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "Resource": { + "description": "The Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "x-ms-azure-resource": true + }, + "InitiateTransferRequest": { + "type": "object", + "description": "Request parameters to initiate transfer.", + "properties": { + "properties": { + "description": "Request parameters to initiate transfer.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/InitiateTransferProperties" + } + } + }, + "InitiateTransferProperties": { + "type": "object", + "description": "Request parameters to initiate transfer.", + "properties": { + "billingProfileId": { + "type": "string", + "description": "Target Usage context for devTest subscriptions." + }, + "recipientEmailId": { + "type": "string", + "description": "Email Id of recipient for transfer." + } + } + }, + "AcceptTransferRequest": { + "type": "object", + "description": "Request parameters to accept transfer.", + "properties": { + "properties": { + "description": "Request parameters to accept transfer.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AcceptTransferProperties" + } + } + }, + "AcceptTransferProperties": { + "type": "object", + "description": "Request parameters to accept transfer.", + "properties": { + "productDetails": { + "description": "Request parameters to accept transfer.", + "type": "array", + "items": { + "$ref": "#/definitions/ProductDetails" + } + } + } + }, + "ProductDetails": { + "type": "object", + "description": "Details of the product to be transferred.", + "properties": { + "productType": { + "description": "Type of the prouct to be transferred.", + "$ref": "#/definitions/ProductType" + }, + "productId": { + "type": "string", + "description": "Id of product to be transferred." + } + } + }, + "ProductType": { + "type": "string", + "description": "Type of the product to be transferred.", + "enum": [ + "AzureSubscription", + "AzureReservation" + ], + "x-ms-enum": { + "name": "productType", + "modelAsString": true + } + }, + "TransferDetails": { + "type": "object", + "description": "Details of the transfer.", + "properties": { + "properties": { + "description": "Details of the transfer.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/TransferProperties" + } + } + }, + "RecipientTransferDetails": { + "type": "object", + "description": "Details of the transfer.", + "properties": { + "properties": { + "description": "Details of the transfer.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/RecipientTransferProperties" + } + } + }, + "DetailedTransferStatus": { + "type": "object", + "description": "Detailed transfer status.", + "properties": { + "productType": { + "type": "string", + "$ref": "#/definitions/ProductType", + "readOnly": true, + "description": "Type of product being transferred." + }, + "productId": { + "type": "string", + "readOnly": true, + "description": "Id of product being transferred." + }, + "transferStatus": { + "type": "string", + "$ref": "#/definitions/ProductTransferStatus", + "readOnly": true, + "description": "Transfer status." + }, + "errorDetails": { + "description": "Error details for transfer execution.", + "$ref": "#/definitions/Error" + } + } + }, + "Error": { + "description": "Error details for transfer execution.", + "properties": { + "errorCode": { + "type": "string", + "readOnly": true, + "description": "Error code." + }, + "errorMessage": { + "type": "string", + "readOnly": true, + "description": "Error message." + } + } + }, + "EligibleProductType": { + "type": "string", + "description": "Type of the products that can be transferred.", + "enum": [ + "DevTestAzureSubscription", + "StandardAzureSubscription", + "AzureReservation" + ], + "x-ms-enum": { + "name": "eligibleProductType", + "modelAsString": true + } + }, + "TransferProperties": { + "description": "Transfer details", + "type": "object", + "properties": { + "creationTime": { + "type": "string", + "format": "date-time", + "description": "Transfer creation time.", + "readOnly": true + }, + "expirationTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Transfer expiration time." + }, + "invoiceSectionId": { + "type": "string", + "description": "Target invoice setion Id.", + "readOnly": true + }, + "billingAccountId": { + "type": "string", + "description": "Target billing account Id.", + "readOnly": true + }, + "transferStatus": { + "type": "string", + "$ref": "#/definitions/TransferStatus", + "description": "Overall transfer status.", + "readOnly": true + }, + "recipientEmailId": { + "type": "string", + "readOnly": true, + "description": "Email Id of recipient of transfer." + }, + "initiatorEmailId": { + "type": "string", + "readOnly": true, + "description": "Email Id of initiator of transfer." + }, + "canceledBy": { + "type": "string", + "readOnly": true, + "description": "Email Id who user canceled the transfer." + }, + "lastModifiedTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Transfer last modification time." + }, + "detailedTransferStatus": { + "type": "array", + "readOnly": true, + "description": "Detailed transfer status.", + "items": { + "$ref": "#/definitions/DetailedTransferStatus" + } + } + } + }, + "RecipientTransferProperties": { + "description": "Transfer Details.", + "type": "object", + "properties": { + "creationTime": { + "type": "string", + "format": "date-time", + "description": "Transfer creation time.", + "readOnly": true + }, + "expirationTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Transfer expiration time." + }, + "allowedProductType": { + "type": "array", + "readOnly": true, + "description": "Type of subscriptions that can be transferred.", + "items": { + "$ref": "#/definitions/EligibleProductType" + } + }, + "transferStatus": { + "type": "string", + "$ref": "#/definitions/TransferStatus", + "description": "Overall transfer status.", + "readOnly": true + }, + "recipientEmailId": { + "type": "string", + "readOnly": true, + "description": "Email Id of recipient of transfer." + }, + "initiatorEmailId": { + "type": "string", + "readOnly": true, + "description": "Email Id of initiator of transfer." + }, + "canceledBy": { + "type": "string", + "readOnly": true, + "description": "Email Id who user canceled the transfer." + }, + "lastModifiedTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Transfer last modification time." + }, + "detailedTransferStatus": { + "type": "array", + "readOnly": true, + "description": "Detailed transfer status.", + "items": { + "$ref": "#/definitions/DetailedTransferStatus" + } + } + } + }, + "TransferStatus": { + "type": "string", + "description": "Possible transfer status.", + "enum": [ + "Pending", + "InProgress", + "Completed", + "CompletedWithErrors", + "Failed", + "Canceled", + "Declined" + ], + "x-ms-enum": { + "name": "transferStatus", + "modelAsString": true + } + }, + "ProductTransferStatus": { + "type": "string", + "description": "Possible transfer status.", + "enum": [ + "NotStarted", + "InProgress", + "Completed", + "Failed" + ], + "x-ms-enum": { + "name": "productTransferStatus", + "modelAsString": true + } + }, + "RecipientTransferDetailsListResult": { + "description": "Result of listing details of the transfer received by caller.", + "properties": { + "value": { + "description": "The list of transfers received by caller.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RecipientTransferDetails" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "TransferDetailsListResult": { + "description": "Result of listing details of the transfer initiated by caller.", + "properties": { + "value": { + "description": "The list of transfers initiated by caller.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/TransferDetails" + } + }, + "nextLink": { + "description": "The link (url) to the next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request. The current version is 2018-03-01-preview." + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Azure Subscription ID.", + "required": true, + "type": "string" + }, + "BillingAccountIdParameter": { + "name": "billingAccountId", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "description": "Billing account Id." + }, + "InvoiceSectionIdParameter": { + "name": "invoiceSectionId", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "description": "Invoice section Id." + }, + "TransferIdParameter": { + "name": "transferId", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "description": "Transfer Id." + }, + "InitiateTransferRequestParameter": { + "name": "body", + "x-ms-parameter-location": "method", + "in": "body", + "required": true, + "description": "Initiate transfer parameters.", + "schema": { + "$ref": "#/definitions/InitiateTransferRequest" + } + }, + "AcceptTransferRequestParameter": { + "name": "body", + "x-ms-parameter-location": "method", + "in": "body", + "required": true, + "description": "Accept transfer parameters.", + "schema": { + "$ref": "#/definitions/AcceptTransferRequest" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/AcceptTransfer.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/AcceptTransfer.json new file mode 100644 index 000000000000..c7de2db09d4e --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/AcceptTransfer.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "transferId": "transferId", + "body": { + "properties": { + "value": [ + { + "productType": "AzureSubscription", + "productId": "subscriptionId" + }, + { + "productType": "AzureReservation", + "productId": "reservedInstanceId" + } + ] + } + } + }, + + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/transfers/transferId", + "type": "Microsoft.Billing/transfers", + "name": "transferId", + "properties": { + "creationTime": "10/10/2018 9:40:01 PM", + "expirationTime": "11/5/2018 4:47:08 AM", + "allowedSubscriptionType": [ + "DevTestAzureSubscription", + "StandardAzureSubscription", + "AzureReservation" + ], + "transferStatus": "InProgress", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "user@contoso.com", + "lastModifiedTime": "10/10/2018 9:45:01 PM", + "detailedTransferStatus": [ + { + "productType": "AzureSubscription", + "productId": "subscriptionId", + "transferStatus": "InProgress" + }, + { + "productType": "AzureReservation", + "productId": "reservedInstanceId", + "transferStatus": "InProgress" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/BillingPeriodsGet.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/BillingPeriodsGet.json new file mode 100644 index 000000000000..7bd4d0157469 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/BillingPeriodsGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "subscriptionId": "subid", + "billingPeriodName": "201702-1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702-1", + "name": "201702-1", + "type": "Microsoft.Billing/billingPeriods", + "properties": { + "billingPeriodStartDate": "2017-01-01", + "billingPeriodEndDate": "2017-02-01", + "invoiceIds": [ + "/subscriptions/subid/providers/Microsoft.Billing/invoices/2017-02-05-123456789", + "/subscriptions/subid/providers/Microsoft.Billing/invoices/2017-01-05-987654321" + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/BillingPeriodsList.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/BillingPeriodsList.json new file mode 100644 index 000000000000..1c79897ad719 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/BillingPeriodsList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702-1", + "name": "201702-1", + "type": "Microsoft.Billing/billingPeriods", + "properties": { + "billingPeriodStartDate": "2017-01-01", + "billingPeriodEndDate": "2017-02-01", + "invoiceIds": [ + "/subscriptions/subid/providers/Microsoft.Billing/invoices/2017-02-05-123456789", + "/subscriptions/subid/providers/Microsoft.Billing/invoices/2017-01-05-987654321" + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/CancelTransfer.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/CancelTransfer.json new file mode 100644 index 000000000000..35e4c74bc9d2 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/CancelTransfer.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "billingAccountId": "billingAccountId", + "invoiceSectionId": "invoiceSectionId", + "transferId": "transferId" + }, + + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/billingAccountId/invoiceSections/invoiceSectionId/transfers/transferId", + "type": "Microsoft.Billing/transfers", + "name": "transferId", + "properties": { + "creationTime": "10/10/2018 9:40:01 PM", + "expirationTime": "11/5/2018 4:47:08 AM", + "invoiceSectionId": "invoiceSectionId", + "billingAccountId": "billingAccountId", + "transferStatus": "Pending", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "user@contoso.com", + "canceledBy": "user@contoso.com", + "lastModifiedTime": "10/10/2018 9:45:01 PM" + } + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/DeclineTransfer.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/DeclineTransfer.json new file mode 100644 index 000000000000..664f9e7aec38 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/DeclineTransfer.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "transferId": "transferId" + }, + + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/transfers/transferId", + "type": "Microsoft.Billing/transfers", + "name": "transferId", + "properties": { + "creationTime": "10/10/2018 9:40:01 PM", + "expirationTime": "11/5/2018 4:47:08 AM", + "allowedSubscriptionType": [ + "DevTestAzureSubscription", + "StandardAzureSubscription", + "AzureReservation" + ], + "transferStatus": "Declined", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "user@contoso.com", + "lastModifiedTime": "10/10/2018 9:45:01 PM" + } + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/EnrollmentAccountsGet.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/EnrollmentAccountsGet.json new file mode 100644 index 000000000000..3d7117536c2d --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/EnrollmentAccountsGet.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "name": "e1bf1c8c-5ac6-44a0-bdcd-aa7c1cf60556" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/enrollmentAccounts/e1bf1c8c-5ac6-44a0-bdcd-aa7c1cf60556", + "name": "e1bf1c8c-5ac6-44a0-bdcd-aa7c1cf60556", + "type": "Microsoft.Billing/enrollmentAccounts", + "properties": { + "principalName": "kathy@contoso.com" + } + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/EnrollmentAccountsList.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/EnrollmentAccountsList.json new file mode 100644 index 000000000000..56cd2ddd35b9 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/EnrollmentAccountsList.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/enrollmentAccounts/e1bf1c8c-5ac6-44a0-bdcd-aa7c1cf60556", + "name": "e1bf1c8c-5ac6-44a0-bdcd-aa7c1cf60556", + "type": "Microsoft.Billing/enrollmentAccounts", + "properties": { + "principalName": "kathy@contoso.com" + } + }, + { + "id": "/providers/Microsoft.Billing/enrollmentAccounts/edd24053-07cd-4ed4-aa5b-326160a6680d", + "name": "edd24053-07cd-4ed4-aa5b-326160a6680d", + "type": "Microsoft.Billing/enrollmentAccounts", + "properties": { + "principalName": "dan@contoso.com" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/GetRecipientTransfer.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/GetRecipientTransfer.json new file mode 100644 index 000000000000..26c89a52c1e1 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/GetRecipientTransfer.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "transferId": "transferId" + }, + + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/transfers/transferId", + "type": "Microsoft.Billing/transfers", + "name": "transferId", + "properties": { + "creationTime": "10/10/2018 9:40:01 PM", + "expirationTime": "11/5/2018 4:47:08 AM", + "allowedSubscriptionType": [ + "DevTestAzureSubscription", + "StandardAzureSubscription", + "AzureReservation" + ], + "transferStatus": "InProgress", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "user@contoso.com", + "lastModifiedTime": "10/10/2018 9:45:01 PM", + "detailedTransferStatus": [ + { + "productType": "AzureSubscription", + "productId": "subscriptionId", + "transferStatus": "InProgress" + }, + { + "productType": "AzureReservation", + "productId": "reservedInstanceId", + "transferStatus": "InProgress" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/GetTransfer.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/GetTransfer.json new file mode 100644 index 000000000000..c31bc82a761a --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/GetTransfer.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "billingAccountId": "billingAccountId", + "invoiceSectionId": "invoiceSectionId", + "transferId": "transferId" + }, + + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/billingAccountId/invoiceSections/invoiceSectionId/transfers/transferId", + "type": "Microsoft.Billing/transfers", + "name": "transferId", + "properties": { + "creationTime": "10/10/2018 9:40:01 PM", + "expirationTime": "11/5/2018 4:47:08 AM", + "invoiceSectionId": "invoiceSectionId", + "billingAccountId": "billingAccountId", + "transferStatus": "InProgress", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "user@contoso.com", + "lastModifiedTime": "10/10/2018 9:45:01 PM", + "detailedTransferStatus": [ + { + "productType": "AzureSubscription", + "productId": "subscriptionId", + "transferStatus": "InProgress" + }, + { + "productType": "AzureReservation", + "productId": "reservedInstanceId", + "transferStatus": "InProgress" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/InitiateTransfer.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/InitiateTransfer.json new file mode 100644 index 000000000000..f8e0699f82d1 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/InitiateTransfer.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "billingAccountId": "billingAccountId", + "invoiceSectionId": "invoiceSectionId", + "body": { + "properties": { + "billingProfileId": "billingProfileId", + "recipientEmailId": "user@contoso.com" + + } + } + }, + + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Billing/billingAccounts/billingAccountId/invoiceSections/invoiceSectionId/transfers/transferId", + "type": "Microsoft.Billing/transfers", + "name": "transferId", + "properties": { + "creationTime": "10/10/2018 9:40:01 PM", + "expirationTime": "11/5/2018 4:47:08 AM", + "invoiceSectionId": "invoiceSectionId", + "billingAccountId": "billingAccountId", + "transferStatus": "Pending", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "user@contoso.com", + "lastModifiedTime": "10/10/2018 9:40:01 PM" + } + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/InvoicesExpand.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/InvoicesExpand.json new file mode 100644 index 000000000000..03fdb36b8f91 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/InvoicesExpand.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "subscriptionId": "subid", + "$top": 1, + "$filter": "invoicePeriodStartDate le 2017-02-01", + "$expand": "downloadUrl" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Billing/invoices/2017-02-05-123456789", + "name": "2017-02-05-123456789", + "type": "Microsoft.Billing/invoices", + "properties": { + "invoicePeriodStartDate": "2017-01-01", + "invoicePeriodEndDate": "2017-02-01", + "billingPeriodIds": [ + "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702-1", + "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201701-1" + ], + "downloadUrl": { + "expiryTime": "2017-02-13T20:46:30Z", + "url": "https://microsoft.com" + } + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/InvoicesGet.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/InvoicesGet.json new file mode 100644 index 000000000000..f8e64db95d4f --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/InvoicesGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "subscriptionId": "subid", + "invoiceName": "2017-02-05-123456789" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Billing/invoices/2017-02-05-123456789", + "name": "2017-02-05-123456789", + "type": "Microsoft.Billing/invoices", + "properties": { + "invoicePeriodStartDate": "2017-01-01", + "invoicePeriodEndDate": "2017-02-01", + "billingPeriodIds": [ + "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702-1", + "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201701-1" + ], + "downloadUrl": { + "expiryTime": "2017-02-13T20:46:30Z", + "url": "https://microsoft.com" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/InvoicesGetLatest.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/InvoicesGetLatest.json new file mode 100644 index 000000000000..c6ab612cee50 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/InvoicesGetLatest.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Billing/invoices/2017-02-05-123456789", + "name": "2017-02-05-123456789", + "type": "Microsoft.Billing/invoices", + "properties": { + "invoicePeriodStartDate": "2017-01-01", + "invoicePeriodEndDate": "2017-02-01", + "billingPeriodIds": [ + "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702-1", + "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201701-1" + ], + "downloadUrl": { + "expiryTime": "2017-02-13T20:46:30Z", + "url": "https://microsoft.com" + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/InvoicesList.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/InvoicesList.json new file mode 100644 index 000000000000..0d02496eef91 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/InvoicesList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Billing/invoices/2017-02-05-123456789", + "name": "2017-02-05-123456789", + "type": "Microsoft.Billing/invoices", + "properties": { + "invoicePeriodStartDate": "2017-01-01", + "invoicePeriodEndDate": "2017-02-01", + "billingPeriodIds": [ + "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201702-1", + "/subscriptions/subid/providers/Microsoft.Billing/billingPeriods/201701-1" + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/ListRecipientTransfers.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/ListRecipientTransfers.json new file mode 100644 index 000000000000..b0f3ab3baba4 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/ListRecipientTransfers.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview" + }, + + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/transfers/transferId", + "type": "Microsoft.Billing/transfers", + "name": "transferId", + "properties": { + "creationTime": "10/10/2018 9:40:01 PM", + "expirationTime": "11/5/2018 4:47:08 AM", + "allowedSubscriptionType": [ + "DevTestAzureSubscription", + "StandardAzureSubscription", + "AzureReservation" + ], + "transferStatus": "InProgress", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "user@contoso.com", + "lastModifiedTime": "10/10/2018 9:45:01 PM", + "detailedTransferStatus": [ + { + "productType": "AzureSubscription", + "productId": "subscriptionId", + "transferStatus": "InProgress" + }, + { + "productType": "ReservedInstance", + "productId": "reservedInstanceId", + "transferStatus": "InProgress" + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/ListTransfers.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/ListTransfers.json new file mode 100644 index 000000000000..7fa4f88a1dc1 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2018-08-01-preview/examples/ListTransfers.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2018-08-01-preview", + "billingAccountId": "billingAccountId", + "invoiceSectionId": "invoiceSectionId" + }, + + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/billingAccounts/billingAccountId/invoiceSections/invoiceSectionId/transfers/transferId", + "type": "Microsoft.Billing/transfers", + "name": "transferId", + "properties": { + "creationTime": "10/10/2018 9:40:01 PM", + "expirationTime": "11/5/2018 4:47:08 AM", + "invoiceSectionId": "invoiceSectionId", + "billingAccountId": "billingAccountId", + "transferStatus": "InProgress", + "recipientEmailId": "user@contoso.com", + "initiatorEmailId": "user@contoso.com", + "lastModifiedTime": "10/10/2018 9:45:01 PM", + "detailedTransferStatus": [ + { + "productType": "AzureSubscription", + "productId": "subscriptionId", + "transferStatus": "InProgress" + }, + { + "productType": "AzureReservation", + "productId": "reservedInstanceId", + "transferStatus": "InProgress" + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2017-11-11-preview/blueprintAssignment.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2017-11-11-preview/blueprintAssignment.json new file mode 100644 index 000000000000..fe32bc4b17bd --- /dev/null +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2017-11-11-preview/blueprintAssignment.json @@ -0,0 +1,533 @@ +{ + "swagger": "2.0", + "info": { + "title": "BlueprintClient", + "description": "Azure Blueprint Client.", + "version": "2017-11-11-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Blueprint/blueprintAssignments/{assignmentName}": { + "put": { + "tags": [ + "Assignment" + ], + "operationId": "Assignments_CreateOrUpdate", + "description": "Create or update a Blueprint assignment.", + "x-ms-examples": { + "Assignment": { + "$ref": "./examples/BlueprintAssignment_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/AssignmentNameParameter" + }, + { + "name": "assignment", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Assignment" + }, + "description": "assignment object to save." + } + ], + "responses": { + "201": { + "description": "Created - Blueprint assignment saved", + "schema": { + "$ref": "#/definitions/Assignment" + } + } + } + }, + "get": { + "tags": [ + "Assignment" + ], + "operationId": "Assignments_Get", + "description": "Get a Blueprint assignment.", + "x-ms-examples": { + "Assignment": { + "$ref": "./examples/BlueprintAssignment_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/AssignmentNameParameter" + } + ], + "responses": { + "200": { + "description": "OK - Blueprint assignment retrieved.", + "schema": { + "$ref": "#/definitions/Assignment" + } + } + } + }, + "delete": { + "tags": [ + "Assignment" + ], + "operationId": "Assignments_Delete", + "description": "Delete a Blueprint assignment.", + "x-ms-examples": { + "Assignment_Delete": { + "$ref": "./examples/BlueprintAssignment_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/AssignmentNameParameter" + } + ], + "responses": { + "202": { + "description": "OK - Blueprint assignment deleted.", + "schema": { + "$ref": "#/definitions/Assignment" + } + }, + "204": { + "description": "no content" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Blueprint/blueprintAssignments": { + "get": { + "tags": [ + "Assignment" + ], + "operationId": "Assignments_List", + "description": "List Blueprint assignments within a subscription.", + "x-ms-examples": { + "Assignment": { + "$ref": "./examples/BlueprintAssignment_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - all Blueprint assignment retrieved.", + "schema": { + "$ref": "#/definitions/AssignmentList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "Assignment": { + "type": "object", + "description": "Represents a Blueprint assignment.", + "properties": { + "identity": { + "description": "Managed Service Identity for this Blueprint assignment", + "$ref": "#/definitions/ManagedServiceIdentity" + }, + "properties": { + "description": "Properties for Assignment object.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AssignmentProperties" + } + }, + "required": [ + "identity", + "properties" + ], + "allOf": [ + { "$ref": "#/definitions/TrackedResource" } + ] + }, + "AssignmentList": { + "type": "object", + "description": "List of Blueprint assignments", + "properties": { + "value": { + "type": "array", + "description": "List of Blueprint assignments.", + "items": { + "$ref": "#/definitions/Assignment" + } + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "Link to the next page of results." + } + } + }, + "ManagedServiceIdentity": { + "type": "object", + "description": "Managed Service Identity", + "properties": { + "type": { + "type": "string", + "description": "Type of the Managed Service Identity.", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned" + ], + "x-ms-enum": { + "name": "ManagedServiceIdentityType", + "modelAsString": true + } + }, + "principalId": { + "type": "string", + "description": "Azure Active Directory principal ID associated with this Identity." + }, + "tenantId": { + "type": "string", + "description": "ID of the Azure Active Directory." + } + }, + "required": [ + "type" + ] + }, + "AssignmentStatus": { + "description": "The status of Blueprint assignment. This field is readonly.", + "type": "object", + "properties": { + }, + "allOf": [ + { "$ref": "#/definitions/BlueprintResourceStatusBase" } + ] + }, + "AssignmentLockSettings": { + "description": "Defines how Blueprint-managed resources will be locked.", + "type": "object", + "properties": { + "mode": { + "type": "string", + "description": "Lock mode.", + "enum": [ + "None", + "AllResources" + ], + "x-ms-enum": { + "name": "AssignmentLockMode", + "modelAsString": true + } + } + } + }, + "AssignmentProperties": { + "type": "object", + "description": "Detailed properties for Assignment.", + "properties": { + "blueprintId": { + "type": "string", + "description": "ID of the Blueprint definition resource." + }, + "parameters": { + "$ref": "#/definitions/ParameterValueCollection", + "description": "Blueprint parameter values." + }, + "resourceGroups": { + "$ref": "#/definitions/ResourceGroupValueCollection", + "description": "Names and locations of resource group placeholders." + }, + "status": { + "description": "Status of Blueprint assignment. This field is readonly.", + "readOnly": true, + "$ref": "#/definitions/AssignmentStatus" + }, + "locks": { + "description": "Defines how Blueprint-managed resources will be locked.", + "$ref": "#/definitions/AssignmentLockSettings" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "State of the assignment.", + "enum": [ + "creating", + "validating", + "waiting", + "deploying", + "cancelling", + "locking", + "succeeded", + "failed", + "canceled", + "deleting" + ], + "x-ms-enum": { + "name": "AssignmentProvisioningState", + "modelAsString": true + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/BlueprintResourcePropertiesBase" + } + ], + "required": [ + "parameters", + "resourceGroups" + ] + }, + "ParameterValueCollection": { + "description": "A dictionary for parameters and their corresponding values.", + "type": "object", + "properties": {}, + "additionalProperties": { + "description": "keyValue pair of parameter fullfillment.", + "$ref": "#/definitions/ParameterValueBase" + } + }, + "ParameterValueBase": { + "description": "Base class for ParameterValue.", + "type": "object", + "properties": { + "description": { + "description": "Optional property, just to establish ParameterValueBase as a BaseClass.", + "type": "string" + } + } + }, + "ParameterValue": { + "description": "Value for the specified parameter.", + "type": "object", + "properties": { + "value": { + "description": "actual value." + } + }, + "required": [ "value" ], + "allOf": [ + { "$ref": "#/definitions/ParameterValueBase" } + ] + }, + "SecretReferenceParameterValue": { + "description": "The reference to a secret, if the parameter should be protected.", + "type": "object", + "properties": { + "reference": { + "description": "Specifies the reference.", + "$ref": "#/definitions/SecretValueReference" + } + }, + "required": [ "reference" ], + "allOf": [ + { "$ref": "#/definitions/ParameterValueBase" } + ] + }, + "SecretValueReference": { + "description": "Reference to a KeyVault secret.", + "type": "object", + "properties": { + "keyVault": { + "description": "Specifies the reference to a given Azure KeyVault.", + "$ref": "#/definitions/keyVaultReference" + }, + "secretName": { + "description": "Name of the secret.", + "type": "string" + }, + "secretVersion": { + "description": "Version of the secret, (if there are multiple versions)", + "type": "string" + } + }, + "required": [ + "keyVault", + "secretName" + ] + }, + "keyVaultReference": { + "description": "Specifies the link to a KeyVault.", + "type": "object", + "properties": { + "id": { + "description": "Azure resource ID of the KeyVault.", + "type": "string" + } + }, + "required": [ "id" ] + }, + "ResourceGroupValueCollection": { + "description": "A dictionary which maps resource group placeholders to the resource groups which will be created.", + "type": "object", + "properties": {}, + "additionalProperties": { + "$ref": "#/definitions/ResourceGroupValue" + } + }, + "ResourceGroupValue": { + "description": "Represents an Azure resource group.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the resource group", + "minLength": 1, + "maxLength": 90 + }, + "location": { + "type": "string", + "description": "Location of the resource group" + } + } + }, + "TrackedResource": { + "description": "Common properties for all Azure tracked resources.", + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "The location of this Blueprint assignment.", + "x-ms-mutability": [ "read", "create" ] + } + }, + "required": [ "location" ], + "allOf": [ + { "$ref": "#/definitions/AzureResourceBase" } + ] + }, + "AzureResourceBase": { + "description": "Common properties for all Azure resources.", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "String Id used to locate any resource on Azure." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of this resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Name of this resource." + } + } + }, + "BlueprintResourcePropertiesBase": { + "description": "Shared properties between all Blueprint resources.", + "type": "object", + "x-ms-external": true, + "properties": { + "displayName": { + "type": "string", + "description": "One-liner string explain this resource.", + "maxLength": 256 + }, + "description": { + "type": "string", + "description": "Multi-line explain this resource.", + "maxLength": 500 + } + } + }, + "BlueprintResourceStatusBase": { + "description": "Shared status properties between all Blueprint resources.", + "type": "object", + "properties": { + "timeCreated": { + "type": "string", + "readOnly": true, + "description": "Creation time of this blueprint." + }, + "lastModified": { + "type": "string", + "readOnly": true, + "description": "Last modified time of this blueprint." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "azure subscriptionId, which we assign the blueprint to." + }, + "AssignmentNameParameter": { + "name": "assignmentName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "name of the assignment." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "x-ms-parameter-location": "client", + "description": "Client Api Version." + } + } +} \ No newline at end of file diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2017-11-11-preview/blueprint.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2017-11-11-preview/blueprintDefinition.json similarity index 81% rename from specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2017-11-11-preview/blueprint.json rename to specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2017-11-11-preview/blueprintDefinition.json index 9a15670774ba..2a4c12664a30 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2017-11-11-preview/blueprint.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2017-11-11-preview/blueprintDefinition.json @@ -571,146 +571,6 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Blueprint/blueprintAssignments/{assignmentName}": { - "put": { - "tags": [ - "Assignment" - ], - "operationId": "Assignments_CreateOrUpdate", - "description": "Create or update a Blueprint assignment.", - "x-ms-examples": { - "Assignment": { - "$ref": "./examples/BlueprintAssignment_Create.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/AssignmentNameParameter" - }, - { - "name": "assignment", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Assignment" - }, - "description": "assignment object to save." - } - ], - "responses": { - "201": { - "description": "Created - Blueprint assignment saved", - "schema": { - "$ref": "#/definitions/Assignment" - } - } - } - }, - "get": { - "tags": [ - "Assignment" - ], - "operationId": "Assignments_Get", - "description": "Get a Blueprint assignment.", - "x-ms-examples": { - "Assignment": { - "$ref": "./examples/BlueprintAssignment_Get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/AssignmentNameParameter" - } - ], - "responses": { - "200": { - "description": "OK - Blueprint assignment retrieved.", - "schema": { - "$ref": "#/definitions/Assignment" - } - } - } - }, - "delete": { - "tags": [ - "Assignment" - ], - "operationId": "Assignments_Delete", - "description": "Delete a Blueprint assignment.", - "x-ms-examples": { - "Assignment_Delete": { - "$ref": "./examples/BlueprintAssignment_Delete.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/AssignmentNameParameter" - } - ], - "responses": { - "202": { - "description": "OK - Blueprint assignment deleted.", - "schema": { - "$ref": "#/definitions/Assignment" - } - }, - "204": { - "description": "no content" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Blueprint/blueprintAssignments": { - "get": { - "tags": [ - "Assignment" - ], - "operationId": "Assignments_List", - "description": "List Blueprint assignments within a subscription.", - "x-ms-examples": { - "Assignment": { - "$ref": "./examples/BlueprintAssignment_List.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - all Blueprint assignment retrieved.", - "schema": { - "$ref": "#/definitions/AssignmentList" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, "/providers/Microsoft.Blueprint/operations": { "get": { "tags": [ @@ -787,28 +647,6 @@ "kind" ] }, - "Assignment": { - "type": "object", - "description": "Represents a Blueprint assignment.", - "properties": { - "identity": { - "description": "Managed Service Identity for this Blueprint assignment", - "$ref": "#/definitions/ManagedServiceIdentity" - }, - "properties": { - "description": "Properties for Assignment object.", - "x-ms-client-flatten": true, - "$ref": "#/definitions/AssignmentProperties" - } - }, - "required": [ - "identity", - "properties" - ], - "allOf": [ - { "$ref": "#/definitions/TrackedResource" } - ] - }, "PublishedBlueprint": { "type": "object", "description": "Represents a published Blueprint.", @@ -884,24 +722,6 @@ } } }, - "AssignmentList": { - "type": "object", - "description": "List of Blueprint assignments", - "properties": { - "value": { - "type": "array", - "description": "List of Blueprint assignments.", - "items": { - "$ref": "#/definitions/Assignment" - } - }, - "nextLink": { - "type": "string", - "readOnly": true, - "description": "Link to the next page of results." - } - } - }, "ResourceProviderOperationList": { "description": "Result of the request to list operations.", "readOnly": true, @@ -946,36 +766,6 @@ } } }, - "ManagedServiceIdentity": { - "type": "object", - "description": "Managed Service Identity", - "properties": { - "type": { - "type": "string", - "description": "Type of the Managed Service Identity.", - "enum": [ - "None", - "SystemAssigned", - "UserAssigned" - ], - "x-ms-enum": { - "name": "ManagedServiceIdentityType", - "modelAsString": true - } - }, - "principalId": { - "type": "string", - "description": "Azure Active Directory principal ID associated with this Identity." - }, - "tenantId": { - "type": "string", - "description": "ID of the Azure Active Directory." - } - }, - "required": [ - "type" - ] - }, "SharedBlueprintProperties": { "description": "Shared Schema for both blueprintProperties and publishedBlueprintProperties.", "type": "object", @@ -1062,90 +852,6 @@ { "$ref": "#/definitions/BlueprintResourceStatusBase" } ] }, - "AssignmentStatus": { - "description": "The status of Blueprint assignment. This field is readonly.", - "type": "object", - "properties": { - }, - "allOf": [ - { "$ref": "#/definitions/BlueprintResourceStatusBase" } - ] - }, - "AssignmentLockSettings": { - "description": "Defines how Blueprint-managed resources will be locked.", - "type": "object", - "properties": { - "mode": { - "type": "string", - "description": "Lock mode.", - "enum": [ - "None", - "AllResources" - ], - "x-ms-enum": { - "name": "AssignmentLockMode", - "modelAsString": true - } - } - } - }, - "AssignmentProperties": { - "type": "object", - "description": "Detailed properties for Assignment.", - "properties": { - "blueprintId": { - "type": "string", - "description": "ID of the Blueprint definition resource." - }, - "parameters": { - "$ref": "#/definitions/ParameterValueCollection", - "description": "Blueprint parameter values." - }, - "resourceGroups": { - "$ref": "#/definitions/ResourceGroupValueCollection", - "description": "Names and locations of resource group placeholders." - }, - "status": { - "description": "Status of Blueprint assignment. This field is readonly.", - "readOnly": true, - "$ref": "#/definitions/AssignmentStatus" - }, - "locks": { - "description": "Defines how Blueprint-managed resources will be locked.", - "$ref": "#/definitions/AssignmentLockSettings" - }, - "provisioningState": { - "type": "string", - "readOnly": true, - "description": "State of the assignment.", - "enum": [ - "creating", - "validating", - "waiting", - "deploying", - "cancelling", - "locking", - "succeeded", - "failed", - "canceled", - "deleting" - ], - "x-ms-enum": { - "name": "AssignmentProvisioningState", - "modelAsString": true - } - } - }, - "allOf": [ - { - "$ref": "#/definitions/BlueprintResourcePropertiesBase" - } - ], - "required": [ - "parameters", - "resourceGroups" - ] - }, "TemplateArtifactProperties": { "type": "object", "description": "Properties of a Template Artifact.", @@ -1508,21 +1214,6 @@ } } }, - "TrackedResource": { - "description": "Common properties for all Azure tracked resources.", - "type": "object", - "properties": { - "location": { - "type": "string", - "description": "The location of this Blueprint assignment.", - "x-ms-mutability": [ "read", "create" ] - } - }, - "required": [ "location" ], - "allOf": [ - { "$ref": "#/definitions/AzureResourceBase" } - ] - }, "AzureResourceBase": { "description": "Common properties for all Azure resources.", "type": "object", @@ -1635,14 +1326,6 @@ "x-ms-parameter-location": "method", "description": "version of the published blueprint." }, - "AssignmentNameParameter": { - "name": "assignmentName", - "in": "path", - "required": true, - "type": "string", - "x-ms-parameter-location": "method", - "description": "name of the assignment." - }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/blueprint/resource-manager/readme.md b/specification/blueprint/resource-manager/readme.md index e13d9aaf0dfd..1c86463570e2 100644 --- a/specification/blueprint/resource-manager/readme.md +++ b/specification/blueprint/resource-manager/readme.md @@ -34,7 +34,8 @@ These settings apply only when `--tag=package-2017-11-preview` is specified on t ``` yaml $(tag) == 'package-2017-11-preview' input-file: -- Microsoft.Blueprint/preview/2017-11-11-preview/blueprint.json +- Microsoft.Blueprint/preview/2017-11-11-preview/blueprintDefinition.json +- Microsoft.Blueprint/preview/2017-11-11-preview/blueprintAssignment.json ``` --- @@ -121,18 +122,19 @@ java: ``` yaml directive: - - from: blueprint.json - suppress: R3006 # BodyTopLevelProperties/R3006/RPCViolation - reason: properties etag defined as eTag in model - - from: blueprint.json - suppress: R3026 # Tracked resource 'XXX' must have patch operation that at least supports the update of tags. + - from: blueprintAssignment.json + suppress: TrackedResourcePatchOperation reason: Assignment is proxy resource. - - from: blueprint.json + - from: blueprintDefinition.json suppress: UniqueResourcePaths where: $.paths reason: Microsoft.Management is a proxy resource provider - - from: blueprint.json + - from: blueprintAssignment.json suppress: OperationsAPIImplementation where: $.paths reason: OperationsAPI for Microsoft.Management is out of scope. + - from: blueprintDefinition.json + suppress: OperationsAPIImplementation + where: $.paths + reason: OperationsAPI for Microsoft.Management is out of scope. ``` diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2016-10-02/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2016-10-02/cdn.json index 269688cfbac5..afb9c55f38d1 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2016-10-02/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2016-10-02/cdn.json @@ -307,7 +307,7 @@ "tags": [ "Profiles" ], - "description": "Generates a dynamic SSO URI used to sign in to the CDN supplemental portal. Supplemnetal portal is used to configure advanced feature capabilities that are not yet available in the Azure portal, such as core reports in a standard profile; rules engine, advanced HTTP reports, and real-time stats and alerts in a premium profile. The SSO URI changes approximately every 10 minutes.", + "description": "Generates a dynamic SSO URI used to sign in to the CDN supplemental portal. Supplemental portal is used to configure advanced feature capabilities that are not yet available in the Azure portal, such as core reports in a standard profile; rules engine, advanced HTTP reports, and real-time stats and alerts in a premium profile. The SSO URI changes approximately every 10 minutes.", "operationId": "Profiles_GenerateSsoUri", "parameters": [ { @@ -878,7 +878,7 @@ { "name": "contentFilePaths", "in": "body", - "description": "The path to the content to be loaded. Path should be a full URL, e.g. ‘/pictires/city.png' which loads a single file ", + "description": "The path to the content to be loaded. Path should be a full URL, e.g. ‘/pictures/city.png' which loads a single file ", "required": true, "schema": { "$ref": "#/definitions/LoadParameters" @@ -1244,7 +1244,7 @@ "tags": [ "CustomDomains" ], - "description": "Gets an exisitng custom domain within an endpoint.", + "description": "Gets an existing custom domain within an endpoint.", "operationId": "CustomDomains_Get", "parameters": [ { @@ -1728,7 +1728,7 @@ } }, "ProfileListResult": { - "description":"Result of the request to list profiles. It contains a list of profile objects and a URL link to get the the next set of results.", + "description":"Result of the request to list profiles. It contains a list of profile objects and a URL link to get the next set of results.", "properties": { "value": { "type": "array", @@ -1846,7 +1846,7 @@ } }, "EndpointListResult": { - "description": "Result of the request to list endpoints. It contains a list of endpoint objects and a URL link to get the the next set of results.", + "description": "Result of the request to list endpoints. It contains a list of endpoint objects and a URL link to get the next set of results.", "properties": { "value": { "type": "array", @@ -1918,7 +1918,7 @@ "$ref": "#/definitions/OptimizationType" }, "geoFilters": { - "description": "List of rules defining user geo access within a CDN endpoint. Each geo filter defines an acess rule to a specified path or content, e.g. block APAC for path /pictures/", + "description": "List of rules defining user geo access within a CDN endpoint. Each geo filter defines an access rule to a specified path or content, e.g. block APAC for path /pictures/", "type": "array", "items": { "$ref": "#/definitions/GeoFilter" @@ -2492,7 +2492,7 @@ "type": "object", "properties": { "baseIpAddress": { - "description": "Ip adress itself.", + "description": "IP address itself.", "type": "string" }, "prefixLength": { @@ -2587,7 +2587,7 @@ } }, "ErrorResponse": { - "description": "Error reponse indicates CDN service is not able to process the incoming request. The reason is provided in the error message.", + "description": "Error response indicates CDN service is not able to process the incoming request. The reason is provided in the error message.", "type": "object", "properties": { "code": { diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2017-04-02/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2017-04-02/cdn.json index 71937bcc8af3..ab181c0c2f75 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2017-04-02/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2017-04-02/cdn.json @@ -337,7 +337,7 @@ "tags": [ "Profiles" ], - "description": "Generates a dynamic SSO URI used to sign in to the CDN supplemental portal. Supplemnetal portal is used to configure advanced feature capabilities that are not yet available in the Azure portal, such as core reports in a standard profile; rules engine, advanced HTTP reports, and real-time stats and alerts in a premium profile. The SSO URI changes approximately every 10 minutes.", + "description": "Generates a dynamic SSO URI used to sign in to the CDN supplemental portal. Supplemental portal is used to configure advanced feature capabilities that are not yet available in the Azure portal, such as core reports in a standard profile; rules engine, advanced HTTP reports, and real-time stats and alerts in a premium profile. The SSO URI changes approximately every 10 minutes.", "operationId": "Profiles_GenerateSsoUri", "x-ms-examples": { "Profiles_GenerateSsoUri": { @@ -983,7 +983,7 @@ { "name": "contentFilePaths", "in": "body", - "description": "The path to the content to be loaded. Path should be a full URL, e.g. ‘/pictires/city.png' which loads a single file ", + "description": "The path to the content to be loaded. Path should be a full URL, e.g. ‘/pictures/city.png' which loads a single file ", "required": true, "schema": { "$ref": "#/definitions/LoadParameters" @@ -1382,7 +1382,7 @@ "tags": [ "CustomDomains" ], - "description": "Gets an exisitng custom domain within an endpoint.", + "description": "Gets an existing custom domain within an endpoint.", "operationId": "CustomDomains_Get", "x-ms-examples": { "CustomDomains_Get": { @@ -1956,7 +1956,7 @@ } }, "ProfileListResult": { - "description": "Result of the request to list profiles. It contains a list of profile objects and a URL link to get the the next set of results.", + "description": "Result of the request to list profiles. It contains a list of profile objects and a URL link to get the next set of results.", "properties": { "value": { "type": "array", @@ -2074,7 +2074,7 @@ } }, "EndpointListResult": { - "description": "Result of the request to list endpoints. It contains a list of endpoint objects and a URL link to get the the next set of results.", + "description": "Result of the request to list endpoints. It contains a list of endpoint objects and a URL link to get the next set of results.", "properties": { "value": { "type": "array", @@ -2116,7 +2116,7 @@ "type": "string" }, "originPath": { - "description": "A directory path on the origin that CDN can use to retreive content from, e.g. contoso.cloudapp.net/originpath.", + "description": "A directory path on the origin that CDN can use to retrieve content from, e.g. contoso.cloudapp.net/originpath.", "type": "string" }, "contentTypesToCompress": { @@ -2151,7 +2151,7 @@ "type": "string" }, "geoFilters": { - "description": "List of rules defining the user's geo access within a CDN endpoint. Each geo filter defines an acess rule to a specified path or content, e.g. block APAC for path /pictures/", + "description": "List of rules defining the user's geo access within a CDN endpoint. Each geo filter defines an access rule to a specified path or content, e.g. block APAC for path /pictures/", "type": "array", "items": { "$ref": "#/definitions/GeoFilter" @@ -2799,7 +2799,7 @@ "type": "object", "properties": { "baseIpAddress": { - "description": "Ip adress itself.", + "description": "IP address itself.", "type": "string" }, "prefixLength": { @@ -2917,7 +2917,7 @@ } }, "ErrorResponse": { - "description": "Error reponse indicates CDN service is not able to process the incoming request. The reason is provided in the error message.", + "description": "Error response indicates CDN service is not able to process the incoming request. The reason is provided in the error message.", "type": "object", "properties": { "code": { diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2017-10-12/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2017-10-12/cdn.json index 2ed3b6583119..79ba38c81747 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2017-10-12/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2017-10-12/cdn.json @@ -337,7 +337,7 @@ "tags": [ "Profiles" ], - "description": "Generates a dynamic SSO URI used to sign in to the CDN supplemental portal. Supplemnetal portal is used to configure advanced feature capabilities that are not yet available in the Azure portal, such as core reports in a standard profile; rules engine, advanced HTTP reports, and real-time stats and alerts in a premium profile. The SSO URI changes approximately every 10 minutes.", + "description": "Generates a dynamic SSO URI used to sign in to the CDN supplemental portal. Supplemental portal is used to configure advanced feature capabilities that are not yet available in the Azure portal, such as core reports in a standard profile; rules engine, advanced HTTP reports, and real-time stats and alerts in a premium profile. The SSO URI changes approximately every 10 minutes.", "operationId": "Profiles_GenerateSsoUri", "x-ms-examples": { "Profiles_GenerateSsoUri": { @@ -983,7 +983,7 @@ { "name": "contentFilePaths", "in": "body", - "description": "The path to the content to be loaded. Path should be a full URL, e.g. ‘/pictires/city.png' which loads a single file ", + "description": "The path to the content to be loaded. Path should be a full URL, e.g. ‘/pictures/city.png' which loads a single file ", "required": true, "schema": { "$ref": "#/definitions/LoadParameters" @@ -1382,7 +1382,7 @@ "tags": [ "CustomDomains" ], - "description": "Gets an exisitng custom domain within an endpoint.", + "description": "Gets an existing custom domain within an endpoint.", "operationId": "CustomDomains_Get", "x-ms-examples": { "CustomDomains_Get": { @@ -2001,7 +2001,7 @@ } }, "ProfileListResult": { - "description": "Result of the request to list profiles. It contains a list of profile objects and a URL link to get the the next set of results.", + "description": "Result of the request to list profiles. It contains a list of profile objects and a URL link to get the next set of results.", "properties": { "value": { "type": "array", @@ -2119,7 +2119,7 @@ } }, "EndpointListResult": { - "description": "Result of the request to list endpoints. It contains a list of endpoint objects and a URL link to get the the next set of results.", + "description": "Result of the request to list endpoints. It contains a list of endpoint objects and a URL link to get the next set of results.", "properties": { "value": { "type": "array", @@ -2161,7 +2161,7 @@ "type": "string" }, "originPath": { - "description": "A directory path on the origin that CDN can use to retreive content from, e.g. contoso.cloudapp.net/originpath.", + "description": "A directory path on the origin that CDN can use to retrieve content from, e.g. contoso.cloudapp.net/originpath.", "type": "string" }, "contentTypesToCompress": { @@ -2196,7 +2196,7 @@ "type": "string" }, "geoFilters": { - "description": "List of rules defining the user's geo access within a CDN endpoint. Each geo filter defines an acess rule to a specified path or content, e.g. block APAC for path /pictures/", + "description": "List of rules defining the user's geo access within a CDN endpoint. Each geo filter defines an access rule to a specified path or content, e.g. block APAC for path /pictures/", "type": "array", "items": { "$ref": "#/definitions/GeoFilter" @@ -2421,7 +2421,7 @@ ] }, "cacheDuration": { - "description": "The duration for which the the content needs to be cached. Allowed format is [d.]hh:mm:ss", + "description": "The duration for which the content needs to be cached. Allowed format is [d.]hh:mm:ss", "type": "string", "x-nullable": true } @@ -3186,7 +3186,7 @@ } }, "ErrorResponse": { - "description": "Error reponse indicates CDN service is not able to process the incoming request. The reason is provided in the error message.", + "description": "Error response indicates CDN service is not able to process the incoming request. The reason is provided in the error message.", "type": "object", "properties": { "code": { diff --git a/specification/cognitiveservices/data-plane/AutoSuggest/stable/v1.0/AutoSuggest.json b/specification/cognitiveservices/data-plane/AutoSuggest/stable/v1.0/AutoSuggest.json index 4bb38df98c1d..c584fa8398eb 100644 --- a/specification/cognitiveservices/data-plane/AutoSuggest/stable/v1.0/AutoSuggest.json +++ b/specification/cognitiveservices/data-plane/AutoSuggest/stable/v1.0/AutoSuggest.json @@ -1,8 +1,8 @@ { "swagger": "2.0", "info": { - "title": "AutoSuggest Search API", - "description": "The AutoSuggest Search API lets you send a search query to Bing and get back a list of news that are relevant to the search query. This section provides technical details about the query parameters and headers that you use to request news and the JSON response objects that contain them. For examples that show how to make requests, see [Searching the web for AutoSuggest](https://docs.microsoft.com/en-us/rest/api/cognitiveservices/bing-autosuggest-api-v7-reference).", + "title": "AutoSuggest Client", + "description": "Autosuggest supplies search terms derived from a root text sent to the service. The terms Autosuggest supplies are related to the root text based on similarity and their frequency or ratings of usefulness in other searches. For examples that show how to use Autosuggest, see [Search using AutoSuggest](https://docs.microsoft.com/en-us/rest/api/cognitiveservices/bing-autosuggest-api-v7-reference).", "version": "1.0" }, "parameters": { @@ -22,6 +22,15 @@ ] } }, + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "../../../Common/Parameters.json#/parameters/GlobalEndpoint" + } + ] + }, "host": "api.cognitive.microsoft.com", "basePath": "/bing/v7.0", "schemes": [ @@ -45,7 +54,7 @@ "paths": { "/Suggestions": { "get": { - "summary": "The AutoSuggest API lets you send a search query to Bing and get back a list of suggestions. This section provides technical details about the query parameters and headers that you use to request suggestions and the JSON response objects that contain them.", + "summary": "The AutoSuggest API lets you send a search query to Bing and get back a list of query suggestions. This section provides technical details about the query parameters and headers that you use to request suggestions and the JSON response objects that contain them.", "operationId": "AutoSuggest", "tags": [ "AutoSuggest" @@ -644,4 +653,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/cognitiveservices/data-plane/Common/Parameters.json b/specification/cognitiveservices/data-plane/Common/Parameters.json index 8831df933942..7fc6dc8d2ec4 100644 --- a/specification/cognitiveservices/data-plane/Common/Parameters.json +++ b/specification/cognitiveservices/data-plane/Common/Parameters.json @@ -7,6 +7,16 @@ }, "paths": {}, "parameters": { + "GlobalEndpoint": { + "name": "Endpoint", + "description": "Supported Cognitive Services endpoints (protocol and hostname, for example: \"https://westus.api.cognitive.microsoft.com\", \"https://api.cognitive.microsoft.com\").", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true, + "default": "https://api.cognitive.microsoft.com" + }, "ImageStream": { "name": "Image", "in": "body", diff --git a/specification/cognitiveservices/data-plane/CustomImageSearch/stable/v1.0/CustomImageSearch.json b/specification/cognitiveservices/data-plane/CustomImageSearch/stable/v1.0/CustomImageSearch.json index 3c36dc32d746..4dcf77236a81 100644 --- a/specification/cognitiveservices/data-plane/CustomImageSearch/stable/v1.0/CustomImageSearch.json +++ b/specification/cognitiveservices/data-plane/CustomImageSearch/stable/v1.0/CustomImageSearch.json @@ -22,6 +22,15 @@ ] } }, + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "../../../Common/Parameters.json#/parameters/GlobalEndpoint" + } + ] + }, "host": "api.cognitive.microsoft.com", "basePath": "/bingcustomsearch/v7.0", "schemes": [ diff --git a/specification/cognitiveservices/data-plane/CustomWebSearch/readme.md b/specification/cognitiveservices/data-plane/CustomWebSearch/readme.md index fc25d5fb6885..3fd2ec58b5ed 100644 --- a/specification/cognitiveservices/data-plane/CustomWebSearch/readme.md +++ b/specification/cognitiveservices/data-plane/CustomWebSearch/readme.md @@ -49,33 +49,6 @@ csharp: sync-methods: none ``` -## Python - -These settings apply only when `--python` is specified on the command line. -Please also specify `--python-sdks-folder=`. -Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. - -``` yaml $(python) -python-mode: create -python: - license-header: MICROSOFT_MIT_NO_VERSION - add-credentials: true - payload-flattening-threshold: 2 - namespace: azure.cognitiveservices.search.customsearch - package-name: azure-cognitiveservices-search-customsearch - clear-output-folder: true -``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-cognitiveservices-search-customsearch/azure/cognitiveservices/search/customsearch -``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/azure-cognitiveservices-search-customsearch -``` - ## Suppressions Suppressing errors due to API design: ``` yaml diff --git a/specification/cognitiveservices/data-plane/CustomWebSearch/readme.python.md b/specification/cognitiveservices/data-plane/CustomWebSearch/readme.python.md new file mode 100644 index 000000000000..10ebb90edd19 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomWebSearch/readme.python.md @@ -0,0 +1,26 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +``` yaml $(python) +python-mode: create +python: + license-header: MICROSOFT_MIT_NO_VERSION + add-credentials: true + payload-flattening-threshold: 2 + namespace: azure.cognitiveservices.search.customsearch + package-name: azure-cognitiveservices-search-customsearch + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-cognitiveservices-search-customsearch/azure/cognitiveservices/search/customsearch +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/azure-cognitiveservices-search-customsearch +``` diff --git a/specification/cognitiveservices/data-plane/CustomWebSearch/stable/v1.0/CustomSearch.json b/specification/cognitiveservices/data-plane/CustomWebSearch/stable/v1.0/CustomSearch.json index b6b00e58cb35..0188ef254c99 100644 --- a/specification/cognitiveservices/data-plane/CustomWebSearch/stable/v1.0/CustomSearch.json +++ b/specification/cognitiveservices/data-plane/CustomWebSearch/stable/v1.0/CustomSearch.json @@ -22,6 +22,15 @@ ] } }, + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "../../../Common/Parameters.json#/parameters/GlobalEndpoint" + } + ] + }, "host": "api.cognitive.microsoft.com", "schemes": [ "https" diff --git a/specification/cognitiveservices/data-plane/EntitySearch/stable/v1.0/EntitySearch.json b/specification/cognitiveservices/data-plane/EntitySearch/stable/v1.0/EntitySearch.json index 25a08fad632b..4aed0801caa5 100644 --- a/specification/cognitiveservices/data-plane/EntitySearch/stable/v1.0/EntitySearch.json +++ b/specification/cognitiveservices/data-plane/EntitySearch/stable/v1.0/EntitySearch.json @@ -1,7 +1,7 @@ { "swagger": "2.0", "info": { - "title": "Entity Search API", + "title": "Entity Search Client", "description": "The Entity Search API lets you send a search query to Bing and get back search results that include entities and places. Place results include restaurants, hotel, or other local businesses. For places, the query can specify the name of the local business or it can ask for a list (for example, restaurants near me). Entity results include persons, places, or things. Place in this context is tourist attractions, states, countries, etc.", "version": "1.0" }, @@ -22,6 +22,15 @@ ] } }, + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "../../../Common/Parameters.json#/parameters/GlobalEndpoint" + } + ] + }, "host": "api.cognitive.microsoft.com", "schemes": [ "https" @@ -210,9 +219,9 @@ } }, "x-ms-examples": { - "Successful query": { - "$ref": "./examples//SuccessfulQueryRequest.json" - } + "Successful query": { + "$ref": "./examples//SuccessfulQueryRequest.json" + } } } } diff --git a/specification/cognitiveservices/data-plane/Face/readme.md b/specification/cognitiveservices/data-plane/Face/readme.md index e03a66ac3723..0cd69747f502 100644 --- a/specification/cognitiveservices/data-plane/Face/readme.md +++ b/specification/cognitiveservices/data-plane/Face/readme.md @@ -51,33 +51,6 @@ csharp: clear-output-folder: true ``` -## Python - -These settings apply only when `--python` is specified on the command line. -Please also specify `--python-sdks-folder=`. -Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. - -``` yaml $(python) -python-mode: create -python: - license-header: MICROSOFT_MIT_NO_VERSION - add-credentials: true - payload-flattening-threshold: 2 - namespace: azure.cognitiveservices.vision.face - package-name: azure-cognitiveservices-vision-face - clear-output-folder: true -``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face -``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/azure-cognitiveservices-vision-face -``` - ## Go See configuration in [readme.go.md](./readme.go.md) diff --git a/specification/cognitiveservices/data-plane/Face/readme.python.md b/specification/cognitiveservices/data-plane/Face/readme.python.md new file mode 100644 index 000000000000..9d1cae3caff9 --- /dev/null +++ b/specification/cognitiveservices/data-plane/Face/readme.python.md @@ -0,0 +1,26 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +``` yaml $(python) +python-mode: create +python: + license-header: MICROSOFT_MIT_NO_VERSION + add-credentials: true + payload-flattening-threshold: 2 + namespace: azure.cognitiveservices.vision.face + package-name: azure-cognitiveservices-vision-face + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-cognitiveservices-vision-face/azure/cognitiveservices/vision/face +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/azure-cognitiveservices-vision-face +``` diff --git a/specification/cognitiveservices/data-plane/ImageSearch/stable/v1.0/ImageSearch.json b/specification/cognitiveservices/data-plane/ImageSearch/stable/v1.0/ImageSearch.json index 2a6773c47853..274f0940dc51 100644 --- a/specification/cognitiveservices/data-plane/ImageSearch/stable/v1.0/ImageSearch.json +++ b/specification/cognitiveservices/data-plane/ImageSearch/stable/v1.0/ImageSearch.json @@ -1,7 +1,7 @@ { "swagger": "2.0", "info": { - "title": "Image Search API", + "title": "Image Search Client", "description": "The Image Search API lets you send a search query to Bing and get back a list of relevant images. This section provides technical details about the query parameters and headers that you use to request images and the JSON response objects that contain them. For examples that show how to make requests, see [Searching the Web for Images](https://docs.microsoft.com/azure/cognitive-services/bing-image-search/search-the-web).", "version": "1.0" }, @@ -22,6 +22,15 @@ ] } }, + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "../../../Common/Parameters.json#/parameters/GlobalEndpoint" + } + ] + }, "host": "api.cognitive.microsoft.com", "basePath": "/bing/v7.0", "schemes": [ diff --git a/specification/cognitiveservices/data-plane/LocalSearch/readme.md b/specification/cognitiveservices/data-plane/LocalSearch/readme.md new file mode 100644 index 000000000000..ef1492082453 --- /dev/null +++ b/specification/cognitiveservices/data-plane/LocalSearch/readme.md @@ -0,0 +1,45 @@ +# Cognitive Services Local Search SDK + +> see https://aka.ms/autorest + +Configuration for generating Local Search SDK. + +The current release is `release_1_0`. + +``` yaml + +tag: release_1_0 +add-credentials: true +openapi-type: data-plane +``` +# Releases + +### Release 1.0 +These settings apply only when `--tag=release_1_0` is specified on the command line. + +``` yaml $(tag) == 'release_1_0' +input-file: stable/v1.0/LocalSearch.json +``` + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + + +## CSharp Settings +These settings apply only when `--csharp` is specified on the command line. +``` yaml $(csharp) +csharp: + namespace: Microsoft.Azure.CognitiveServices.Search.LocalSearch + output-folder: $(csharp-sdks-folder)/CognitiveServices/dataPlane/Search/BingLocalSearch/BingLocalSearch/Generated/LocalSearch +``` + + +## Suppressions +Suppressing errors due to API design: +``` yaml +directive: + - suppress: R3016 + reason: _type is a polymorphic discriminator that can't be changed. +``` \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/LocalSearch/stable/v1.0/LocalSearch.json b/specification/cognitiveservices/data-plane/LocalSearch/stable/v1.0/LocalSearch.json new file mode 100644 index 000000000000..4361421ff602 --- /dev/null +++ b/specification/cognitiveservices/data-plane/LocalSearch/stable/v1.0/LocalSearch.json @@ -0,0 +1,943 @@ +{ + "swagger": "2.0", + "info": { + "title": "Local Search Client", + "description": "The Local Search client lets you send a search query to Bing and get back search results that include local businesses such as restaurants, hotels, retail stores, or other local businesses. The query can specify the name of the local business or it can ask for a list (for example, restaurants near me).", + "version": "1.0" + }, + "parameters": { + "x-bingapis-sdk": { + "name": "X-BingApis-SDK", + "description": "Activate swagger compliance", + "x-ms-parameter-location": "method", + "required": true, + "type": "string", + "in": "header", + "x-ms-enum": { + "name": "XBingApisSDK", + "modelAsString": true + }, + "enum": [ + "true" + ] + } + }, + "host": "api.cognitive.microsoft.com", + "schemes": [ + "https" + ], + "basePath": "/localbusinesses/v7.0/search", + "produces": [ + "application/json" + ], + "securityDefinitions": { + "apiKeyHeader": { + "name": "Ocp-Apim-Subscription-Key", + "type": "apiKey", + "in": "header" + } + }, + "security": [ + { + "apiKeyHeader": [] + } + ], + "paths": { + "/localbusinesses/v7.0/search": { + "get": { + "summary": "The Local Search API lets you send a search query to Bing and get back search results that include local businesses such as restaurants, hotels, retail stores, or other local businesses. The query can specify the name of the local business or it can ask for a list (for example, restaurants near me).", + "operationId": "Local_Search", + "tags": [ + "LocalSearch" + ], + "parameters": [ + { + "$ref": "#/parameters/x-bingapis-sdk" + }, + { + "name": "Accept", + "in": "header", + "description": "The default media type is application/json. To specify that the response use [JSON-LD](http://json-ld.org/), set the Accept header to application/ld+json.", + "required": false, + "type": "string" + }, + { + "name": "Accept-Language", + "x-ms-client-name": "AcceptLanguage", + "in": "header", + "description": "A comma-delimited list of one or more languages to use for user interface strings. The list is in decreasing order of preference. For additional information, including expected format, see [RFC2616](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html). This header and the setLang query parameter are mutually exclusive; do not specify both. If you set this header, you must also specify the cc query parameter. Bing will use the first supported language it finds from the list, and combine that language with the cc parameter value to determine the market to return results for. If the list does not include a supported language, Bing will find the closest language and market that supports the request, and may use an aggregated or default market for the results instead of a specified one. You should use this header and the cc query parameter only if you specify multiple languages; otherwise, you should use the mkt and setLang query parameters. A user interface string is a string that's used as a label in a user interface. There are very few user interface strings in the JSON response objects. Any links in the response objects to Bing.com properties will apply the specified language.", + "required": false, + "type": "string" + }, + { + "name": "Pragma", + "in": "header", + "description": "By default, Bing returns cached content, if available. To prevent Bing from returning cached content, set the Pragma header to no-cache (for example, Pragma: no-cache).", + "required": false, + "type": "string" + }, + { + "name": "User-Agent", + "x-ms-client-name": "UserAgent", + "in": "header", + "description": "The user agent originating the request. Bing uses the user agent to provide mobile users with an optimized experience. Although optional, you are strongly encouraged to always specify this header. The user-agent should be the same string that any commonly used browser would send. For information about user agents, see [RFC 2616](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html).", + "required": false, + "type": "string" + }, + { + "name": "X-MSEdge-ClientID", + "x-ms-client-name": "ClientId", + "in": "header", + "description": "Bing uses this header to provide users with consistent behavior across Bing API calls. Bing often flights new features and improvements, and it uses the client ID as a key for assigning traffic on different flights. If you do not use the same client ID for a user across multiple requests, then Bing may assign the user to multiple conflicting flights. Being assigned to multiple conflicting flights can lead to an inconsistent user experience. For example, if the second request has a different flight assignment than the first, the experience may be unexpected. Also, Bing can use the client ID to tailor web results to that client ID’s search history, providing a richer experience for the user. Bing also uses this header to help improve result rankings by analyzing the activity generated by a client ID. The relevance improvements help with better quality of results delivered by Bing APIs and in turn enables higher click-through rates for the API consumer. IMPORTANT: Although optional, you should consider this header required. Persisting the client ID across multiple requests for the same end user and device combination enables 1) the API consumer to receive a consistent user experience, and 2) higher click-through rates via better quality of results from the Bing APIs. Each user that uses your application on the device must have a unique, Bing generated client ID. If you do not include this header in the request, Bing generates an ID and returns it in the X-MSEdge-ClientID response header. The only time that you should NOT include this header in a request is the first time the user uses your app on that device. Use the client ID for each Bing API request that your app makes for this user on the device. Persist the client ID. To persist the ID in a browser app, use a persistent HTTP cookie to ensure the ID is used across all sessions. Do not use a session cookie. For other apps such as mobile apps, use the device's persistent storage to persist the ID. The next time the user uses your app on that device, get the client ID that you persisted. Bing responses may or may not include this header. If the response includes this header, capture the client ID and use it for all subsequent Bing requests for the user on that device. If you include the X-MSEdge-ClientID, you must not include cookies in the request.", + "required": false, + "type": "string" + }, + { + "name": "X-MSEdge-ClientIP", + "x-ms-client-name": "ClientIp", + "in": "header", + "description": "The IPv4 or IPv6 address of the client device. The IP address is used to discover the user's location. Bing uses the location information to determine safe search behavior. Although optional, you are encouraged to always specify this header and the X-Search-Location header. Do not obfuscate the address (for example, by changing the last octet to 0). Obfuscating the address results in the location not being anywhere near the device's actual location, which may result in Bing serving erroneous results.", + "required": false, + "type": "string" + }, + { + "name": "X-Search-Location", + "x-ms-client-name": "Location", + "in": "header", + "description": "A semicolon-delimited list of key/value pairs that describe the client's geographical location. Bing uses the location information to determine safe search behavior and to return relevant local content. Specify the key/value pair as :. The following are the keys that you use to specify the user's location. lat (required): The latitude of the client's location, in degrees. The latitude must be greater than or equal to -90.0 and less than or equal to +90.0. Negative values indicate southern latitudes and positive values indicate northern latitudes. long (required): The longitude of the client's location, in degrees. The longitude must be greater than or equal to -180.0 and less than or equal to +180.0. Negative values indicate western longitudes and positive values indicate eastern longitudes. re (required): The radius, in meters, which specifies the horizontal accuracy of the coordinates. Pass the value returned by the device's location service. Typical values might be 22m for GPS/Wi-Fi, 380m for cell tower triangulation, and 18,000m for reverse IP lookup. ts (optional): The UTC UNIX timestamp of when the client was at the location. (The UNIX timestamp is the number of seconds since January 1, 1970.) head (optional): The client's relative heading or direction of travel. Specify the direction of travel as degrees from 0 through 360, counting clockwise relative to true north. Specify this key only if the sp key is nonzero. sp (optional): The horizontal velocity (speed), in meters per second, that the client device is traveling. alt (optional): The altitude of the client device, in meters. are (optional): The radius, in meters, that specifies the vertical accuracy of the coordinates. Specify this key only if you specify the alt key. Although many of the keys are optional, the more information that you provide, the more accurate the location results are. Although optional, you are encouraged to always specify the user's geographical location. Providing the location is especially important if the client's IP address does not accurately reflect the user's physical location (for example, if the client uses VPN). For optimal results, you should include this header and the X-MSEdge-ClientIP header, but at a minimum, you should include this header.", + "required": false, + "type": "string" + }, + { + "name": "cc", + "x-ms-client-name": "CountryCode", + "in": "query", + "description": "A 2-character country code of the country where the results come from. This API supports only the United States market. If you specify this query parameter, it must be set to us. If you set this parameter, you must also specify the Accept-Language header. Bing uses the first supported language it finds from the languages list, and combine that language with the country code that you specify to determine the market to return results for. If the languages list does not include a supported language, Bing finds the closest language and market that supports the request, or it may use an aggregated or default market for the results instead of a specified one. You should use this query parameter and the Accept-Language query parameter only if you specify multiple languages; otherwise, you should use the mkt and setLang query parameters. This parameter and the mkt query parameter are mutually exclusive—do not specify both.", + "required": false, + "type": "string" + }, + { + "name": "mkt", + "x-ms-client-name": "Market", + "in": "query", + "description": "The market where the results come from. You are strongly encouraged to always specify the market, if known. Specifying the market helps Bing route the request and return an appropriate and optimal response. This parameter and the cc query parameter are mutually exclusive—do not specify both.", + "required": false, + "type": "string", + "default": "en-us" + }, + { + "name": "q", + "x-ms-client-name": "Query", + "in": "query", + "description": "The user's search term.", + "required": true, + "type": "string" + }, + { + "name": "localcategories", + "x-ms-client-name": "LocalCategories", + "in": "query", + "description": "comma-delimiated list of business categories to search for. Supported categories can be high-level such as EatDrink, Shop, SeeDo.", + "required": false, + "type": "string" + }, + { + "name": "localcircularview", + "x-ms-client-name": "localCircularView", + "in": "query", + "description": "Preferred location to search around, expressed as Latitude, longitude and radius in meters. For example 47.61503,-122.1719,5000. Note that circular view should only be used to indicate a search around a point on the map, not as an approximation for a view port of a map rectangle.", + "required": false, + "type": "string" + }, + { + "name": "localmapview", + "x-ms-client-name": "localMapView", + "in": "query", + "description": "Preferred bounding box for results, specified in NW_latitude, NW_Longitude, SE_Latitude, SE_Longitude format. For example 47.64,-122.13,47.63,-122.12. These values are lat, long pairs for the Northwest corner and the Southeast corner of a rectangle.", + "required": false, + "type": "string" + }, + { + "name": "count", + "x-ms-client-name": "Count", + "in": "query", + "description": "Preferred number of results to return. If not specified, then Bing returns 1-20 of the most relevant results.", + "required": false, + "type": "string" + }, + { + "name": "first", + "x-ms-client-name": "First", + "in": "query", + "description": "First result to return. zero-based. default is 0.", + "required": false, + "type": "string" + }, + { + "name": "ResponseFormat", + "in": "query", + "description": "The media type to use for the response. The following are the possible case-insensitive values: JSON, JSONLD. The default is JSON. If you specify JSONLD, the response body includes JSON-LD objects that contain the search results.", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "Json", + "JsonLd" + ], + "x-ms-enum": { + "name": "ResponseFormat", + "modelAsString": true + } + }, + "collectionFormat": "csv" + }, + { + "name": "SafeSearch", + "in": "query", + "description": "A filter used to filter adult content. Off: Return webpages with adult text, images, or videos. Moderate: Return webpages with adult text, but not adult images or videos. Strict: Do not return webpages with adult text, images, or videos. The default is Moderate. If the request comes from a market that Bing's adult policy requires that safeSearch is set to Strict, Bing ignores the safeSearch value and uses Strict. If you use the site: query operator, there is the chance that the response may contain adult content regardless of what the safeSearch query parameter is set to. Use site: only if you are aware of the content on the site and your scenario supports the possibility of adult content.", + "required": false, + "type": "string", + "enum": [ + "Off", + "Moderate", + "Strict" + ], + "x-ms-enum": { + "name": "SafeSearch", + "modelAsString": true + } + }, + { + "name": "SetLang", + "in": "query", + "description": "The language to use for user interface strings. Specify the language using the ISO 639-1 2-letter language code. For example, the language code for English is EN. The default is EN (English). Although optional, you should always specify the language. Typically, you set setLang to the same language specified by mkt unless the user wants the user interface strings displayed in a different language. This parameter and the Accept-Language header are mutually exclusive; do not specify both. A user interface string is a string that's used as a label in a user interface. There are few user interface strings in the JSON response objects. Also, any links to Bing.com properties in the response objects apply the specified language.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/SearchResponse" + } + }, + "default": { + "description": "An error has occurred. Check the response type and/or status code for more details.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples//SuccessfulLocalSearchRequest.json" + } + } + } + } + }, + "definitions": { + "SearchResponse": { + "description": "Defines the top-level object that the response includes when the request succeeds.", + "allOf": [ + { + "$ref": "#/definitions/Response" + } + ], + "type": "object", + "properties": { + "queryContext": { + "description": "An object that contains the query string that Bing used for the request. This object contains the query string as entered by the user. It may also contain an altered query string that Bing used for the query if the query string contained a spelling mistake.", + "$ref": "#/definitions/QueryContext", + "readOnly": true + }, + "places": { + "description": "A list of local entities such as restaurants or hotels that are relevant to the query.", + "$ref": "#/definitions/Places", + "readOnly": true + }, + "lottery": { + "$ref": "#/definitions/SearchResultsAnswer", + "readOnly": true + }, + "searchResultsConfidenceScore": { + "readOnly": true, + "type": "number", + "format": "float" + } + } + }, + "Response": { + "description": "Defines a response. All schemas that return at the root of the response must inherit from this object.", + "allOf": [ + { + "$ref": "#/definitions/Identifiable" + } + ], + "type": "object", + "properties": { + "readLink": { + "description": "The URL that returns this resource.", + "readOnly": true, + "type": "string" + }, + "webSearchUrl": { + "description": "The URL to Bing's search result for this item.", + "readOnly": true, + "type": "string" + }, + "potentialAction": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Action" + } + }, + "immediateAction": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Action" + } + }, + "preferredClickthroughUrl": { + "readOnly": true, + "type": "string" + }, + "adaptiveCard": { + "readOnly": true, + "type": "string" + } + } + }, + "QueryContext": { + "description": "Defines the query context that Bing used for the request.", + "discriminator": "_type", + "type": "object", + "required": [ + "originalQuery", + "_type" + ], + "properties": { + "originalQuery": { + "description": "The query string as specified in the request.", + "type": "string" + }, + "alteredQuery": { + "description": "The query string used by Bing to perform the query. Bing uses the altered query string if the original query string contained spelling mistakes. For example, if the query string is \"saling downwind\", the altered query string will be \"sailing downwind\". This field is included only if the original query string contains a spelling mistake.", + "readOnly": true, + "type": "string" + }, + "alterationDisplayQuery": { + "description": "AlteredQuery that is formatted for display purpose. The query string in the AlterationDisplayQuery can be html-escaped and can contain hit-highlighting characters", + "readOnly": true, + "type": "string" + }, + "alterationOverrideQuery": { + "description": "The query string to use to force Bing to use the original string. For example, if the query string is \"saling downwind\", the override query string will be \"+saling downwind\". Remember to encode the query string which results in \"%2Bsaling+downwind\". This field is included only if the original query string contains a spelling mistake.", + "readOnly": true, + "type": "string" + }, + "adultIntent": { + "description": "A Boolean value that indicates whether the specified query has adult intent. The value is true if the query has adult intent; otherwise, false.", + "readOnly": true, + "type": "boolean" + }, + "askUserForLocation": { + "description": "A Boolean value that indicates whether Bing requires the user's location to provide accurate results. If you specified the user's location by using the X-MSEdge-ClientIP and X-Search-Location headers, you can ignore this field. For location aware queries, such as \"today's weather\" or \"restaurants near me\" that need the user's location to provide accurate results, this field is set to true. For location aware queries that include the location (for example, \"Seattle weather\"), this field is set to false. This field is also set to false for queries that are not location aware, such as \"best sellers\".", + "readOnly": true, + "type": "boolean" + }, + "isTransactional": { + "readOnly": true, + "type": "boolean" + }, + "_type": { + "type": "string" + } + } + }, + "Places": { + "description": "Defines a local entity answer.", + "allOf": [ + { + "$ref": "#/definitions/SearchResultsAnswer" + } + ], + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "description": "A list of local entities, such as restaurants or hotels.", + "type": "array", + "items": { + "$ref": "#/definitions/Thing" + } + } + } + }, + "SearchResultsAnswer": { + "description": "Defines a search result answer.", + "allOf": [ + { + "$ref": "#/definitions/Answer" + } + ], + "type": "object", + "properties": { + "queryContext": { + "$ref": "#/definitions/QueryContext", + "readOnly": true + }, + "totalEstimatedMatches": { + "description": "The estimated number of webpages that are relevant to the query. Use this number along with the count and offset query parameters to page the results.", + "readOnly": true, + "type": "integer", + "format": "int64" + }, + "isFamilyFriendly": { + "readOnly": true, + "type": "boolean" + } + } + }, + "Identifiable": { + "description": "Defines the identity of a resource.", + "allOf": [ + { + "$ref": "#/definitions/ResponseBase" + } + ], + "type": "object", + "properties": { + "id": { + "description": "A String identifier.", + "readOnly": true, + "type": "string" + } + } + }, + "Answer": { + "description": "Defines an answer.", + "allOf": [ + { + "$ref": "#/definitions/Response" + } + ], + "type": "object", + "properties": {} + }, + "ErrorResponse": { + "description": "The top-level response that represents a failed request.", + "allOf": [ + { + "$ref": "#/definitions/Response" + } + ], + "type": "object", + "required": [ + "errors" + ], + "properties": { + "errors": { + "description": "A list of errors that describe the reasons why the request failed.", + "type": "array", + "items": { + "$ref": "#/definitions/Error" + } + } + } + }, + "Thing": { + "description": "Defines a thing.", + "allOf": [ + { + "$ref": "#/definitions/Response" + } + ], + "type": "object", + "properties": { + "name": { + "description": "The name of the thing represented by this object.", + "readOnly": true, + "type": "string" + }, + "url": { + "description": "The URL to get more information about the thing represented by this object.", + "readOnly": true, + "type": "string" + }, + "entityPresentationInfo": { + "description": "Additional information about the entity such as hints that you can use to determine the entity's type. To determine the entity's type, use the entityScenario and entityTypeHint fields.", + "$ref": "#/definitions/EntitiesEntityPresentationInfo", + "readOnly": true + } + } + }, + "Action": { + "description": "Defines an action.", + "allOf": [ + { + "$ref": "#/definitions/CreativeWork" + } + ], + "type": "object", + "properties": { + "location": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Place" + } + }, + "result": { + "description": "The result produced in the action.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Thing" + } + }, + "displayName": { + "description": "A display name for the action.", + "readOnly": true, + "type": "string" + }, + "isTopAction": { + "description": "A Boolean representing whether this result is the top action.", + "readOnly": true, + "type": "boolean" + }, + "serviceUrl": { + "description": "Use this URL to get additional data to determine how to take the appropriate action. For example, the serviceUrl might return JSON along with an image URL.", + "readOnly": true, + "type": "string" + } + } + }, + "CreativeWork": { + "description": "The most generic kind of creative work, including books, movies, photographs, software programs, etc.", + "allOf": [ + { + "$ref": "#/definitions/Thing" + } + ], + "type": "object", + "properties": { + "thumbnailUrl": { + "description": "The URL to a thumbnail of the item.", + "readOnly": true, + "type": "string" + }, + "about": { + "description": "For internal use only.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Thing" + } + }, + "mentions": { + "description": "For internal use only.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Thing" + } + }, + "provider": { + "description": "The source of the creative work.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Thing" + } + }, + "creator": { + "$ref": "#/definitions/Thing", + "readOnly": true + }, + "text": { + "description": "Text content of this creative work", + "readOnly": true, + "type": "string" + }, + "discussionUrl": { + "readOnly": true, + "type": "string" + }, + "commentCount": { + "readOnly": true, + "type": "integer", + "format": "int32" + }, + "mainEntity": { + "$ref": "#/definitions/Thing", + "readOnly": true + }, + "headLine": { + "readOnly": true, + "type": "string" + }, + "copyrightHolder": { + "$ref": "#/definitions/Thing", + "readOnly": true + }, + "copyrightYear": { + "readOnly": true, + "type": "integer", + "format": "int32" + }, + "disclaimer": { + "readOnly": true, + "type": "string" + }, + "isAccessibleForFree": { + "readOnly": true, + "type": "boolean" + }, + "genre": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + } + }, + "isFamilyFriendly": { + "readOnly": true, + "type": "boolean" + } + } + }, + "Place": { + "description": "Defines information about a local entity, such as a restaurant or hotel.", + "allOf": [ + { + "$ref": "#/definitions/Thing" + } + ], + "type": "object", + "properties": { + "geo": { + "$ref": "#/definitions/GeoCoordinates", + "readOnly": true + }, + "routablePoint": { + "$ref": "#/definitions/GeoCoordinates", + "readOnly": true + }, + "address": { + "description": "The postal address of where the entity is located", + "$ref": "#/definitions/PostalAddress", + "readOnly": true + }, + "telephone": { + "description": "The entity's telephone number", + "readOnly": true, + "type": "string" + } + } + }, + "ResponseBase": { + "description": "Response base", + "discriminator": "_type", + "type": "object", + "required": [ + "_type" + ], + "properties": { + "_type": { + "type": "string" + } + } + }, + "Error": { + "description": "Defines the error that occurred.", + "discriminator": "_type", + "type": "object", + "required": [ + "code", + "message", + "_type" + ], + "properties": { + "code": { + "description": "The error code that identifies the category of error.", + "type": "string", + "default": "None", + "enum": [ + "None", + "ServerError", + "InvalidRequest", + "RateLimitExceeded", + "InvalidAuthorization", + "InsufficientAuthorization" + ], + "x-ms-enum": { + "name": "ErrorCode", + "modelAsString": true + } + }, + "subCode": { + "description": "The error code that further helps to identify the error.", + "readOnly": true, + "type": "string", + "enum": [ + "UnexpectedError", + "ResourceError", + "NotImplemented", + "ParameterMissing", + "ParameterInvalidValue", + "HttpNotAllowed", + "Blocked", + "AuthorizationMissing", + "AuthorizationRedundancy", + "AuthorizationDisabled", + "AuthorizationExpired" + ], + "x-ms-enum": { + "name": "ErrorSubCode", + "modelAsString": true + } + }, + "message": { + "description": "A description of the error.", + "type": "string" + }, + "moreDetails": { + "description": "A description that provides additional information about the error.", + "readOnly": true, + "type": "string" + }, + "parameter": { + "description": "The parameter in the request that caused the error.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "The parameter's value in the request that was not valid.", + "readOnly": true, + "type": "string" + }, + "_type": { + "type": "string" + } + } + }, + "Intangible": { + "description": "A utility class that serves as the umbrella for a number of 'intangible' things such as quantities, structured values, etc.", + "allOf": [ + { + "$ref": "#/definitions/Thing" + } + ], + "type": "object" + }, + "EntitiesEntityPresentationInfo": { + "description": "Defines additional information about an entity such as type hints.", + "x-ms-discriminator-value": "Entities/EntityPresentationInfo", + "discriminator": "_type", + "type": "object", + "required": [ + "entityScenario", + "_type" + ], + "properties": { + "entityScenario": { + "description": "The supported scenario.", + "type": "string", + "default": "DominantEntity", + "enum": [ + "DominantEntity", + "DisambiguationItem", + "ListItem" + ], + "x-ms-enum": { + "name": "EntityScenario", + "modelAsString": true + } + }, + "entityTypeHints": { + "description": "A list of hints that indicate the entity's type. The list could contain a single hint such as Movie or a list of hints such as Place, LocalBusiness, Restaurant. Each successive hint in the array narrows the entity's type.", + "readOnly": true, + "type": "array", + "items": { + "type": "string", + "enum": [ + "Place", + "LocalBusiness", + "Restaurant", + "Hotel" + ], + "x-ms-enum": { + "name": "EntityType", + "modelAsString": true + } + } + }, + "entityTypeDisplayHint": { + "description": "A display version of the entity hint. For example, if entityTypeHints is Artist, this field may be set to American Singer.", + "readOnly": true, + "type": "string" + }, + "query": { + "readOnly": true, + "type": "string" + }, + "entitySubTypeHints": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + } + }, + "_type": { + "type": "string" + } + } + }, + "SearchAction": { + "allOf": [ + { + "$ref": "#/definitions/Action" + } + ], + "type": "object", + "properties": { + "displayText": { + "readOnly": true, + "type": "string" + }, + "query": { + "readOnly": true, + "type": "string" + }, + "richContent": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Answer" + } + }, + "formattingRuleId": { + "readOnly": true, + "type": "string" + } + } + }, + "StructuredValue": { + "allOf": [ + { + "$ref": "#/definitions/Intangible" + } + ], + "type": "object" + }, + "GeoCoordinates": { + "discriminator": "_type", + "type": "object", + "required": [ + "latitude", + "longitude", + "_type" + ], + "properties": { + "latitude": { + "type": "number", + "format": "double" + }, + "longitude": { + "type": "number", + "format": "double" + }, + "elevation": { + "readOnly": true, + "type": "number", + "format": "double" + }, + "_type": { + "type": "string" + } + } + }, + "PostalAddress": { + "description": "Defines a postal address.", + "allOf": [ + { + "$ref": "#/definitions/StructuredValue" + } + ], + "type": "object", + "properties": { + "streetAddress": { + "readOnly": true, + "type": "string" + }, + "addressLocality": { + "description": "The city where the street address is located. For example, Seattle.", + "readOnly": true, + "type": "string" + }, + "addressSubregion": { + "readOnly": true, + "type": "string" + }, + "addressRegion": { + "description": "The state or province code where the street address is located. This could be the two-letter code. For example, WA, or the full name , Washington.", + "readOnly": true, + "type": "string" + }, + "postalCode": { + "description": "The zip code or postal code where the street address is located. For example, 98052.", + "readOnly": true, + "type": "string" + }, + "postOfficeBoxNumber": { + "readOnly": true, + "type": "string" + }, + "addressCountry": { + "description": "The country/region where the street address is located. This could be the two-letter ISO code. For example, US, or the full name, United States.", + "readOnly": true, + "type": "string" + }, + "countryIso": { + "description": "The two letter ISO code of this countr. For example, US.", + "readOnly": true, + "type": "string" + }, + "neighborhood": { + "description": "The neighborhood where the street address is located. For example, Westlake.", + "readOnly": true, + "type": "string" + }, + "addressRegionAbbreviation": { + "description": "Region Abbreviation. For example, WA.", + "readOnly": true, + "type": "string" + }, + "text": { + "description": "The complete address. For example, 2100 Westlake Ave N, Bellevue, WA 98052.", + "readOnly": true, + "type": "string" + }, + "houseNumber": { + "readOnly": true, + "type": "string" + }, + "streetName": { + "readOnly": true, + "type": "string" + }, + "formattingRuleId": { + "readOnly": true, + "type": "string" + } + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/LocalSearch/stable/v1.0/examples/SuccessfulLocalSearchRequest.json b/specification/cognitiveservices/data-plane/LocalSearch/stable/v1.0/examples/SuccessfulLocalSearchRequest.json new file mode 100644 index 000000000000..d34cc7cf7e80 --- /dev/null +++ b/specification/cognitiveservices/data-plane/LocalSearch/stable/v1.0/examples/SuccessfulLocalSearchRequest.json @@ -0,0 +1,339 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Accept": "application/json", + "User-Agent": "{User Agent}", + "X-MSEdge-ClientID": "{Client ID}", + "mkt": "en-us", + "q": "restaurants in seattle" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "_type": "SearchResponse", + "queryContext": { + "originalQuery": "restaurants in seattle" + }, + "places": { + "totalEstimatedMatches": 10, + "value": [ + { + "_type": "LocalBusiness", + "id": "https://api.cognitive.microsoft.com/api/v7/#Places.0", + "name": "SkyCity Restaurant", + "url": "http://www.spaceneedle.com/", + "entityPresentationInfo": { + "entityScenario": "ListItem", + "entityTypeHints": [ + "Place", + "LocalBusiness", + "Restaurant" + ] + }, + "geo": { + "latitude": 47.620491027832, + "longitude": -122.349227905273 + }, + "routablePoint": { + "latitude": 47.620044708252, + "longitude": -122.348487854004 + }, + "address": { + "streetAddress": "400 Broad St", + "addressLocality": "Seattle", + "addressRegion": "WA", + "postalCode": "98109", + "addressCountry": "US", + "neighborhood": "Queen Anne: Lower", + "text": "400 Broad St, Seattle, WA, 98109" + }, + "telephone": "(206) 905-2100" + }, + { + "_type": "LocalBusiness", + "id": "https://api.cognitive.microsoft.com/api/v7/#Places.1", + "name": "Shiro's Sushi Restaurant", + "url": "http://shiros.com/", + "entityPresentationInfo": { + "entityScenario": "ListItem", + "entityTypeHints": [ + "Place", + "LocalBusiness", + "Restaurant" + ] + }, + "geo": { + "latitude": 47.6147994995117, + "longitude": -122.347297668457 + }, + "routablePoint": { + "latitude": 47.614917755127, + "longitude": -122.347145080566 + }, + "address": { + "streetAddress": "2401 2nd Ave", + "addressLocality": "Seattle", + "addressRegion": "WA", + "postalCode": "98121", + "addressCountry": "US", + "neighborhood": "Belltown", + "text": "2401 2nd Ave, Seattle, WA, 98121" + }, + "telephone": "(206) 443-9844" + }, + { + "_type": "LocalBusiness", + "id": "https://api.cognitive.microsoft.com/api/v7/#Places.2", + "name": "Maneki Restaurant", + "url": "http://www.manekirestaurant.com/", + "entityPresentationInfo": { + "entityScenario": "ListItem", + "entityTypeHints": [ + "Place", + "LocalBusiness", + "Restaurant" + ] + }, + "geo": { + "latitude": 47.599739074707, + "longitude": -122.326141357422 + }, + "routablePoint": { + "latitude": 47.599739074707, + "longitude": -122.326362609863 + }, + "address": { + "streetAddress": "304 6th Ave S", + "addressLocality": "Seattle", + "addressRegion": "WA", + "postalCode": "98104", + "addressCountry": "US", + "neighborhood": "Japantown, Chinatown International District", + "text": "304 6th Ave S, Seattle, WA, 98104" + }, + "telephone": "(206) 622-2631" + }, + { + "_type": "LocalBusiness", + "id": "https://api.cognitive.microsoft.com/api/v7/#Places.3", + "name": "Palomino", + "url": "http://palomino.com/", + "entityPresentationInfo": { + "entityScenario": "ListItem", + "entityTypeHints": [ + "Place", + "LocalBusiness", + "Restaurant" + ] + }, + "geo": { + "latitude": 47.610538482666, + "longitude": -122.334686279297 + }, + "routablePoint": { + "latitude": 47.6102981567383, + "longitude": -122.335258483887 + }, + "address": { + "streetAddress": "1420 5th Ave", + "addressLocality": "Seattle", + "addressRegion": "WA", + "postalCode": "98101", + "addressCountry": "US", + "neighborhood": "Downtown", + "text": "1420 5th Ave, Seattle, WA, 98101" + }, + "telephone": "(206) 623-1300" + }, + { + "_type": "LocalBusiness", + "id": "https://api.cognitive.microsoft.com/api/v7/#Places.4", + "name": "Lowell's Restaurant", + "url": "http://eatatlowells.com/", + "entityPresentationInfo": { + "entityScenario": "ListItem", + "entityTypeHints": [ + "Place", + "LocalBusiness", + "Restaurant" + ] + }, + "geo": { + "latitude": 47.6087112426758, + "longitude": -122.340911865234 + }, + "routablePoint": { + "latitude": 47.6088256835938, + "longitude": -122.340766906738 + }, + "address": { + "streetAddress": "1519 Pike Pl", + "addressLocality": "Seattle", + "addressRegion": "WA", + "postalCode": "98101", + "addressCountry": "US", + "neighborhood": "Downtown", + "text": "1519 Pike Pl, Seattle, WA, 98101" + }, + "telephone": "(206) 622-2036" + }, + { + "_type": "LocalBusiness", + "id": "https://api.cognitive.microsoft.com/api/v7/#Places.5", + "name": "The Athenian Seafood Restaurant and Bar", + "url": "http://www.athenianseattle.com/", + "entityPresentationInfo": { + "entityScenario": "ListItem", + "entityTypeHints": [ + "Place", + "LocalBusiness", + "Restaurant" + ] + }, + "address": { + "streetAddress": "", + "addressLocality": "Seattle", + "addressRegion": "WA", + "postalCode": "98101", + "addressCountry": "US", + "neighborhood": "Downtown", + "text": "Seattle, WA, 98101" + }, + "telephone": "(206) 624-7166" + }, + { + "_type": "LocalBusiness", + "id": "https://api.cognitive.microsoft.com/api/v7/#Places.6", + "name": "Cutters Crabhouse", + "url": "http://cutterscrabhouse.com/", + "entityPresentationInfo": { + "entityScenario": "ListItem", + "entityTypeHints": [ + "Place", + "LocalBusiness", + "Restaurant" + ] + }, + "geo": { + "latitude": 47.6105194091797, + "longitude": -122.344390869141 + }, + "routablePoint": { + "latitude": 47.610767364502, + "longitude": -122.34407043457 + }, + "address": { + "streetAddress": "2001 Western Ave", + "addressLocality": "Seattle", + "addressRegion": "WA", + "postalCode": "98121", + "addressCountry": "US", + "neighborhood": "Downtown", + "text": "2001 Western Ave, Seattle, WA, 98121" + }, + "telephone": "(206) 448-4884" + }, + { + "_type": "LocalBusiness", + "id": "https://api.cognitive.microsoft.com/api/v7/#Places.7", + "name": "Americana Restaurant", + "url": "http://www.americanaseattle.com/", + "entityPresentationInfo": { + "entityScenario": "ListItem", + "entityTypeHints": [ + "Place", + "LocalBusiness", + "Restaurant" + ] + }, + "geo": { + "latitude": 47.6206283569336, + "longitude": -122.321342468262 + }, + "routablePoint": { + "latitude": 47.6206321716309, + "longitude": -122.320915222168 + }, + "address": { + "streetAddress": "219 Broadway E", + "addressLocality": "Seattle", + "addressRegion": "WA", + "postalCode": "98102", + "addressCountry": "US", + "neighborhood": "Capitol Hill", + "text": "219 Broadway E, Seattle, WA, 98102" + }, + "telephone": "(206) 328-4604" + }, + { + "_type": "LocalBusiness", + "id": "https://api.cognitive.microsoft.com/api/v7/#Places.8", + "name": "Six Seven Restaurant", + "url": "http://www.edgewaterhotel.com/seattle-six-seven-restaurant.aspx", + "entityPresentationInfo": { + "entityScenario": "ListItem", + "entityTypeHints": [ + "Place", + "LocalBusiness", + "Restaurant" + ] + }, + "geo": { + "latitude": 47.6125106811523, + "longitude": -122.352020263672 + }, + "routablePoint": { + "latitude": 47.612964630127, + "longitude": -122.351547241211 + }, + "address": { + "streetAddress": "2411 Alaskan Way", + "addressLocality": "Seattle", + "addressRegion": "WA", + "postalCode": "98121", + "addressCountry": "US", + "neighborhood": "Interbay", + "text": "2411 Alaskan Way, Seattle, WA, 98121" + }, + "telephone": "(206) 269-4575" + }, + { + "_type": "LocalBusiness", + "id": "https://api.cognitive.microsoft.com/api/v7/#Places.9", + "name": "Fisherman's Restaurant", + "url": "http://thefishermansrestaurant.com/", + "entityPresentationInfo": { + "entityScenario": "ListItem", + "entityTypeHints": [ + "Place", + "LocalBusiness", + "Restaurant" + ] + }, + "geo": { + "latitude": 47.6060791015625, + "longitude": -122.341049194336 + }, + "routablePoint": { + "latitude": 47.606330871582, + "longitude": -122.340446472168 + }, + "address": { + "streetAddress": "1301 Alaskan Way", + "addressLocality": "Seattle", + "addressRegion": "WA", + "postalCode": "98101", + "addressCountry": "US", + "neighborhood": "Waterfront", + "text": "1301 Alaskan Way, Seattle, WA, 98101" + }, + "telephone": "(206) 623-3500" + } + ], + "searchAction": {} + } + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/NewsSearch/stable/v1.0/NewsSearch.json b/specification/cognitiveservices/data-plane/NewsSearch/stable/v1.0/NewsSearch.json index f05cfc1aba66..298d58342305 100644 --- a/specification/cognitiveservices/data-plane/NewsSearch/stable/v1.0/NewsSearch.json +++ b/specification/cognitiveservices/data-plane/NewsSearch/stable/v1.0/NewsSearch.json @@ -1,7 +1,7 @@ { "swagger": "2.0", "info": { - "title": "News Search API", + "title": "News Search Client", "description": "The News Search API lets you send a search query to Bing and get back a list of news that are relevant to the search query. This section provides technical details about the query parameters and headers that you use to request news and the JSON response objects that contain them. For examples that show how to make requests, see [Searching the web for news](https://docs.microsoft.com/en-us/azure/cognitive-services/bing-news-search/search-the-web).", "version": "1.0" }, @@ -22,6 +22,15 @@ ] } }, + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "../../../Common/Parameters.json#/parameters/GlobalEndpoint" + } + ] + }, "host": "api.cognitive.microsoft.com", "basePath": "/bing/v7.0", "schemes": [ @@ -241,9 +250,9 @@ } }, "x-ms-examples": { - "Successful query": { - "$ref": "./examples//SuccessfulNewsSearchRequest.json" - } + "Successful query": { + "$ref": "./examples//SuccessfulNewsSearchRequest.json" + } } } }, @@ -429,9 +438,9 @@ } }, "x-ms-examples": { - "Successful query": { - "$ref": "./examples//SuccessfulNewsCategoryRequest.json" - } + "Successful query": { + "$ref": "./examples//SuccessfulNewsCategoryRequest.json" + } } } }, @@ -609,9 +618,9 @@ } }, "x-ms-examples": { - "Successful query": { - "$ref": "./examples//SuccessfulNewsTrendingRequest.json" - } + "Successful query": { + "$ref": "./examples//SuccessfulNewsTrendingRequest.json" + } } } } diff --git a/specification/cognitiveservices/data-plane/QnAMaker/readme.go.md b/specification/cognitiveservices/data-plane/QnAMaker/readme.go.md new file mode 100644 index 000000000000..412a87aa9eac --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/readme.go.md @@ -0,0 +1,26 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +``` yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + namespace: qnamaker + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: release_4_0 +``` + +### Tag: release_4_0 and go + +These settings apply only when `--tag=release_4_0 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'release_4_0' && $(go) +output-folder: $(go-sdk-folder)/services/cognitiveservices/v4.0/$(namespace) +``` \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/QnAMaker/readme.md b/specification/cognitiveservices/data-plane/QnAMaker/readme.md new file mode 100644 index 000000000000..46c348f2d021 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/readme.md @@ -0,0 +1,99 @@ +# Cognitive Services QnAMaker SDK + +> see https://aka.ms/autorest + +Configuration for generating QnAMaker SDK. + +The current release is `release_4_0`. + +``` yaml + +tag: release_4_0 +add-credentials: true +openapi-type: data-plane +``` +# Releases + +### Release 4.0 +These settings apply only when `--tag=release_4_0` is specified on the command line. + +``` yaml $(tag) == 'release_4_0' +input-file: stable/v4.0/QnAMaker.json +``` + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-python + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-sdk-for-node + - repo: azure-sdk-for-ruby + after_scripts: + - bundle install && rake arm:regen_all_profiles['azure_cognitiveservices_qnamaker'] +``` + + +## CSharp Settings +These settings apply only when `--csharp` is specified on the command line. +``` yaml $(csharp) +csharp: + sync-methods: None + license-header: MICROSOFT_MIT_NO_VERSION + azure-arm: false + namespace: Microsoft.Azure.CognitiveServices.Knowledge.QnAMaker + output-folder: $(csharp-sdks-folder)/CognitiveServices/dataPlane/Knowledge/QnAMaker/QnAMaker/Generated + clear-output-folder: true +``` + +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +``` yaml $(python) +python-mode: create +python: + license-header: MICROSOFT_MIT_NO_VERSION + add-credentials: true + payload-flattening-threshold: 2 + namespace: azure.cognitiveservices.knowledge.qnamaker + package-name: azure-cognitiveservices-knowledge-qnamaker + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-cognitiveservices-qnamaker/azure/cognitiveservices/knowledge/qnamaker +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/azure-cognitiveservices-knowledge-qnamaker +``` + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +java: + azure-arm: true + namespace: com.microsoft.azure.cognitiveservices.knowledge.qnamaker + license-header: MICROSOFT_MIT_NO_CODEGEN + payload-flattening-threshold: 1 + output-folder: $(azure-libraries-for-java-folder)/cognitiveservices/data-plane/knowledge/qnamaker + with-optional-parameters: true + with-single-async-method: true +``` diff --git a/specification/cognitiveservices/data-plane/QnAMaker/readme.nodejs.md b/specification/cognitiveservices/data-plane/QnAMaker/readme.nodejs.md new file mode 100644 index 000000000000..c5b34edc925f --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/readme.nodejs.md @@ -0,0 +1,14 @@ +## Node.js + +These settings apply only when `--nodejs` is specified on the command line. +Please also specify `--node-sdks-folder=`. + +``` yaml $(nodejs) +nodejs: + package-name: azure-cognitiveservices-qnamaker + output-folder: $(node-sdks-folder)/lib/services/cognitiveServices/qnamaker + azure-arm: false + generate-license-txt: true + generate-package-json: true + generate-readme-md: true +``` diff --git a/specification/cognitiveservices/data-plane/QnAMaker/readme.ruby.md b/specification/cognitiveservices/data-plane/QnAMaker/readme.ruby.md new file mode 100644 index 000000000000..235b78174402 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/readme.ruby.md @@ -0,0 +1,26 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +``` yaml +package-name: azure_cognitiveservices_qnamaker +package-version: "0.16.0" +azure-arm: true +``` + +### Ruby multi-api + +``` yaml $(ruby) && $(multiapi) +batch: + - tag: release_4_0 +``` + +### Tag: release_4_0 and ruby + +These settings apply only when `--tag=release_4_0 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'release_4_0' && $(ruby) +namespace: "Azure::CognitiveServices::QnAMaker::V4" +output-folder: $(ruby-sdks-folder)/data/azure_cognitiveservices_qnamaker/lib +``` \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/QnAMaker/readme.typescript.md b/specification/cognitiveservices/data-plane/QnAMaker/readme.typescript.md new file mode 100644 index 000000000000..5639b97a3794 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/readme.typescript.md @@ -0,0 +1,12 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +``` yaml $(typescript) +typescript: + package-name: "@azure/cognitiveservices-qnamaker" + output-folder: "$(typescript-sdks-folder)/packages/@azure/cognitiveservices-qnamaker" + azure-arm: false + generate-metadata: true +``` diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/QnAMaker.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/QnAMaker.json new file mode 100644 index 000000000000..a2e196d6f592 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/QnAMaker.json @@ -0,0 +1,1261 @@ +{ + "swagger": "2.0", + "info": { + "version": "4.0", + "title": "QnAMaker Client", + "description": "An API for QnAMaker Service" + }, + "securityDefinitions": { + "apim_key": { + "type": "apiKey", + "name": "Ocp-Apim-Subscription-Key", + "in": "header" + } + }, + "security": [ + { + "apim_key": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}/qnamaker/v4.0", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "paths": { + "/endpointkeys": { + "get": { + "summary": "Gets endpoint keys for an endpoint", + "operationId": "EndpointKeys_GetKeys", + "parameters": [], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Response with endpoint info in it.", + "schema": { + "$ref": "#/definitions/EndpointKeysDTO" + }, + "x-nullable": true + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulGetEpKeys.json" + } + } + } + }, + "/endpointkeys/{keyType}": { + "patch": { + "tags": [ + "EndpointKeys" + ], + "summary": "Re-generates an endpoint key.", + "operationId": "EndpointKeys_RefreshKeys", + "parameters": [ + { + "$ref": "#/parameters/KeyType" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Details of the endpoint keys generated.", + "schema": { + "$ref": "#/definitions/EndpointKeysDTO" + }, + "x-nullable": true + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulSetEpKeys.json" + } + } + } + }, + "/alterations": { + "get": { + "tags": [ + "Alterations" + ], + "summary": "Download alterations from runtime.", + "operationId": "Alterations_Get", + "parameters": [], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Alterations data.", + "schema": { + "$ref": "#/definitions/WordAlterationsDTO" + }, + "x-nullable": true + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulGetAlts.json" + } + } + }, + "put": { + "tags": [ + "Alterations" + ], + "summary": "Replace alterations data.", + "operationId": "Alterations_Replace", + "parameters": [ + { + "$ref": "#/parameters/WordAlterations" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "204": { + "description": "HTTP 204 No Content." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulSetAlts.json" + } + } + } + }, + "/knowledgebases": { + "get": { + "tags": [ + "Knowledgebases" + ], + "summary": "Gets all knowledgebases for a user.", + "operationId": "Knowledgebase_ListAll", + "parameters": [], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Collection of knowlegebases.", + "schema": { + "$ref": "#/definitions/KnowledgebasesDTO" + }, + "x-nullable": true + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulKbsResponse.json" + } + } + } + }, + "/operations/{operationId}": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Gets details of a specific long running operation.", + "operationId": "Operations_GetDetails", + "parameters": [ + { + "$ref": "#/parameters/OperationId" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Details of the long running operation.", + "schema": { + "$ref": "#/definitions/Operation" + }, + "x-nullable": true, + "headers": { + "RetryAfter": { + "type": "integer", + "description": "Indicates how long the client should wait before sending a follow up request. The header will be present only if the operation is running or has not started yet." + } + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulGetOps.json" + } + } + } + }, + "/knowledgebases/{kbId}": { + "get": { + "tags": [ + "Knowledgebases" + ], + "summary": "Gets details of a specific knowledgebase.", + "operationId": "Knowledgebase_GetDetails", + "parameters": [ + { + "$ref": "#/parameters/KbId" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Details of the knowledgebase.", + "schema": { + "$ref": "#/definitions/KnowledgebaseDTO" + }, + "x-nullable": true + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulGetKb.json" + } + } + }, + "delete": { + "tags": [ + "Knowledgebases" + ], + "summary": "Deletes the knowledgebase and all its data.", + "operationId": "Knowledgebase_Delete", + "parameters": [ + { + "$ref": "#/parameters/KbId" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "204": { + "description": "HTTP 204 No content." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulDelKb.json" + } + } + }, + "post": { + "tags": [ + "Knowledgebases" + ], + "summary": "Publishes all changes in test index of a knowledgebase to its prod index.", + "operationId": "Knowledgebase_Publish", + "parameters": [ + { + "$ref": "#/parameters/KbId" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "204": { + "description": "HTTP 204 No content." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulPubKb.json" + } + } + }, + "put": { + "tags": [ + "Knowledgebases" + ], + "summary": "Replace knowledgebase contents.", + "operationId": "Knowledgebase_Replace", + "parameters": [ + { + "$ref": "#/parameters/KbId" + }, + { + "$ref": "#/parameters/ReplaceKb" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "204": { + "description": "HTTP 204 No content." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulRepKb.json" + } + } + }, + "patch": { + "tags": [ + "Knowledgebases" + ], + "summary": "Asynchronous operation to modify a knowledgebase.", + "operationId": "Knowledgebase_Update", + "parameters": [ + { + "$ref": "#/parameters/KbId" + }, + { + "$ref": "#/parameters/UpdateKb" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "202": { + "description": "Details of the asynchronous operation.", + "schema": { + "$ref": "#/definitions/Operation" + }, + "x-nullable": true, + "headers": { + "Location": { + "type": "string", + "description": "Relative URI to the target location of the asynchronous operation. Client should poll this resource to get status of the operation." + } + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulUpdKb.json" + } + } + } + }, + "/knowledgebases/create": { + "post": { + "tags": [ + "Knowledgebases" + ], + "summary": "Asynchronous operation to create a new knowledgebase.", + "operationId": "Knowledgebase_Create", + "parameters": [ + { + "$ref": "#/parameters/CreateKbPayload" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "202": { + "description": "Details of the asynchronous operation.", + "schema": { + "$ref": "#/definitions/Operation" + }, + "x-nullable": true + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulCreateKb.json" + } + } + } + }, + "/knowledgebases/{kbId}/{environment}/qna": { + "get": { + "tags": [ + "Knowledgebases" + ], + "summary": "Download the knowledgebase.", + "operationId": "Knowledgebase_Download", + "parameters": [ + { + "$ref": "#/parameters/KbId" + }, + { + "$ref": "#/parameters/Environment" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Collection of all Q-A in the knowledgebase.", + "schema": { + "$ref": "#/definitions/QnADocumentsDTO" + }, + "x-nullable": true + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Successful query": { + "$ref": "./examples/SuccessfulDownloadKb.json" + } + } + } + } + }, + "definitions": { + "UpdateKbOperationDTO": { + "type": "object", + "description": "Contains list of QnAs to be updated", + "additionalProperties": false, + "properties": { + "add": { + "description": "An instance of CreateKbInputDTO for add operation", + "allOf": [ + { + "$ref": "#/definitions/CreateKbInputDTO" + } + ] + }, + "delete": { + "description": "An instance of DeleteKbContentsDTO for delete Operation", + "allOf": [ + { + "$ref": "#/definitions/DeleteKbContentsDTO" + } + ] + }, + "update": { + "description": "An instance of UpdateKbContentsDTO for Update Operation", + "allOf": [ + { + "$ref": "#/definitions/UpdateKbContentsDTO" + } + ] + } + } + }, + "UpdateKbContentsDTO": { + "type": "object", + "description": "PATCH body schema for Update operation in Update Kb", + "additionalProperties": false, + "properties": { + "name": { + "type": "string", + "description": "Friendly name for the knowledgebase." + }, + "qnaList": { + "type": "array", + "description": "List of Q-A (UpdateQnaDTO) to be added to the knowledgebase.", + "items": { + "$ref": "#/definitions/UpdateQnaDTO" + } + }, + "urls": { + "type": "array", + "description": "List of existing URLs to be refreshed. The content will be extracted again and re-indexed.", + "maxLength": 10, + "items": { + "type": "string" + } + } + } + }, + "UpdateQnaDTO": { + "type": "object", + "description": "PATCH Body schema for Update Qna List", + "additionalProperties": false, + "properties": { + "id": { + "type": "integer", + "description": "Unique id for the Q-A", + "format": "int32", + "maximum": 2147483647, + "minimum": 0 + }, + "answer": { + "type": "string", + "description": "Answer text" + }, + "source": { + "type": "string", + "description": "Source from which Q-A was indexed. eg. https://docs.microsoft.com/en-us/azure/cognitive-services/QnAMaker/FAQs", + "maxLength": 300 + }, + "questions": { + "description": "List of questions associated with the answer.", + "allOf": [ + { + "$ref": "#/definitions/UpdateQuestionsDTO" + } + ] + }, + "metadata": { + "description": "List of metadata associated with the answer to be updated", + "allOf": [ + { + "$ref": "#/definitions/UpdateMetadataDTO" + } + ] + } + } + }, + "UpdateQuestionsDTO": { + "type": "object", + "description": "PATCH Body schema for Update Kb which contains list of questions to be added and deleted", + "additionalProperties": false, + "properties": { + "add": { + "type": "array", + "description": "List of questions to be added", + "maxLength": 100, + "items": { + "type": "string" + } + }, + "delete": { + "type": "array", + "description": "List of questions to be deleted.", + "maxLength": 100, + "items": { + "type": "string" + } + } + } + }, + "UpdateMetadataDTO": { + "type": "object", + "description": "PATCH Body schema to represent list of Metadata to be updated", + "additionalProperties": false, + "properties": { + "delete": { + "type": "array", + "description": "List of Metadata associated with answer to be deleted", + "maxLength": 100, + "items": { + "$ref": "#/definitions/MetadataDTO" + } + }, + "add": { + "type": "array", + "description": "List of Metadat associated with answer to be added", + "maxLength": 100, + "items": { + "$ref": "#/definitions/MetadataDTO" + } + } + } + }, + "DeleteKbContentsDTO": { + "type": "object", + "description": "PATCH body schema of Delete Operation in UpdateKb", + "additionalProperties": false, + "properties": { + "ids": { + "type": "array", + "description": "List of Qna Ids to be deleted", + "items": { + "type": "integer", + "format": "int32" + } + }, + "sources": { + "type": "array", + "description": "List of sources to be deleted from knowledgebase.", + "maxLength": 300, + "minLength": 1, + "items": { + "type": "string" + } + } + } + }, + "CreateKbInputDTO": { + "type": "object", + "description": "Input to create KB.", + "additionalProperties": false, + "properties": { + "qnaList": { + "type": "array", + "description": "List of QNA to be added to the index. Ids are generated by the service and should be omitted.", + "items": { + "$ref": "#/definitions/QnADTO" + } + }, + "urls": { + "type": "array", + "description": "List of URLs to be added to knowledgebase.", + "maxLength": 10, + "items": { + "type": "string" + } + }, + "files": { + "type": "array", + "description": "List of files to be added to knowledgebase.", + "maxLength": 10, + "items": { + "$ref": "#/definitions/FileDTO" + } + } + } + }, + "KnowledgebaseEnvironment": { + "type": "string", + "description": "Enumeration of knowledgebase environments.", + "x-ms-enum": { + "name": "KnowledgebaseEnvironmentType", + "modelAsString": true + }, + "enum": [ + "Prod", + "Test" + ] + }, + "QnADocumentsDTO": { + "type": "object", + "description": "List of QnADTO", + "additionalProperties": false, + "properties": { + "qnaDocuments": { + "type": "array", + "description": "List of answers.", + "items": { + "$ref": "#/definitions/QnADTO" + } + } + } + }, + "CreateKbDTO": { + "type": "object", + "description": "Post body schema for CreateKb operation.", + "additionalProperties": false, + "required": [ + "name" + ], + "properties": { + "name": { + "type": "string", + "description": "Friendly name for the knowledgebase.", + "maxLength": 100, + "minLength": 1 + }, + "qnaList": { + "type": "array", + "description": "List of Q-A (QnADTO) to be added to the knowledgebase. Q-A Ids are assigned by the service and should be omitted.", + "maxLength": 1000, + "items": { + "$ref": "#/definitions/QnADTO" + } + }, + "urls": { + "type": "array", + "description": "List of URLs to be used for extracting Q-A.", + "maxLength": 10, + "items": { + "type": "string" + } + }, + "files": { + "type": "array", + "description": "List of files from which to Extract Q-A.", + "maxLength": 10, + "items": { + "$ref": "#/definitions/FileDTO" + } + } + } + }, + "FileDTO": { + "type": "object", + "description": "DTO to hold details of uploaded files.", + "additionalProperties": false, + "required": [ + "fileName", + "fileUri" + ], + "properties": { + "fileName": { + "type": "string", + "description": "File name. Supported file types are \".tsv\", \".pdf\", \".txt\", \".docx\", \".xlsx\".", + "maxLength": 200, + "minLength": 1 + }, + "fileUri": { + "type": "string", + "description": "Public URI of the file." + } + } + }, + "ReplaceKbDTO": { + "type": "object", + "description": "Post body schema for Replace KB operation.", + "additionalProperties": false, + "required": [ + "qnAList" + ], + "properties": { + "qnAList": { + "type": "array", + "description": "List of Q-A (QnADTO) to be added to the knowledgebase. Q-A Ids are assigned by the service and should be omitted.", + "items": { + "$ref": "#/definitions/QnADTO" + } + } + } + }, + "QnADTO": { + "type": "object", + "description": "Q-A object.", + "additionalProperties": false, + "required": [ + "answer", + "questions" + ], + "properties": { + "id": { + "type": "integer", + "description": "Unique id for the Q-A.", + "format": "int32" + }, + "answer": { + "type": "string", + "description": "Answer text", + "maxLength": 25000, + "minLength": 1 + }, + "source": { + "type": "string", + "description": "Source from which Q-A was indexed. eg. https://docs.microsoft.com/en-us/azure/cognitive-services/QnAMaker/FAQs", + "maxLength": 300 + }, + "questions": { + "type": "array", + "description": "List of questions associated with the answer.", + "maxLength": 100, + "minLength": 1, + "items": { + "type": "string" + } + }, + "metadata": { + "type": "array", + "description": "List of metadata associated with the answer.", + "maxLength": 10, + "items": { + "$ref": "#/definitions/MetadataDTO" + } + } + } + }, + "MetadataDTO": { + "type": "object", + "description": "Name - value pair of metadata.", + "additionalProperties": false, + "required": [ + "name", + "value" + ], + "properties": { + "name": { + "type": "string", + "description": "Metadata name.", + "maxLength": 100, + "minLength": 1 + }, + "value": { + "type": "string", + "description": "Metadata value.", + "maxLength": 500, + "minLength": 1 + } + } + }, + "ErrorResponse": { + "type": "object", + "description": "Error response. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.", + "additionalProperties": false, + "properties": { + "error": { + "description": "The error object.", + "allOf": [ + { + "$ref": "#/definitions/Error" + } + ] + } + } + }, + "Error": { + "type": "object", + "description": "The error object. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.", + "additionalProperties": false, + "required": [ + "code" + ], + "properties": { + "code": { + "description": "One of a server-defined set of error codes.", + "$ref": "#/definitions/ErrorCode" + }, + "message": { + "type": "string", + "description": "A human-readable representation of the error." + }, + "target": { + "type": "string", + "description": "The target of the error." + }, + "details": { + "type": "array", + "description": "An array of details about specific errors that led to this reported error.", + "items": { + "$ref": "#/definitions/Error" + } + }, + "innerError": { + "description": "An object containing more specific information than the current object about the error.", + "$ref": "#/definitions/InnerErrorModel" + } + } + }, + "ErrorCode": { + "type": "string", + "description": "Human readable error code.", + "x-ms-enum": { + "name": "ErrorCodeType", + "modelAsString": true + }, + "enum": [ + "BadArgument", + "Forbidden", + "NotFound", + "KbNotFound", + "Unauthorized", + "Unspecified", + "EndpointKeysError", + "QuotaExceeded", + "QnaRuntimeError", + "SKULimitExceeded", + "OperationNotFound", + "ServiceError", + "ValidationFailure", + "ExtractionFailure" + ] + }, + "InnerErrorModel": { + "type": "object", + "description": "An object containing more specific information about the error. As per Microsoft One API guidelines - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.", + "additionalProperties": false, + "properties": { + "code": { + "type": "string", + "description": "A more specific error code than was provided by the containing error." + }, + "innerError": { + "description": "An object containing more specific information than the current object about the error.", + "$ref": "#/definitions/InnerErrorModel" + } + } + }, + "Operation": { + "type": "object", + "description": "Record to track long running operation.", + "additionalProperties": false, + "properties": { + "operationState": { + "description": "Operation state.", + "$ref": "#/definitions/OperationState" + }, + "createdTimestamp": { + "type": "string", + "description": "Timestamp when the operation was created." + }, + "lastActionTimestamp": { + "type": "string", + "description": "Timestamp when the current state was entered." + }, + "resourceLocation": { + "type": "string", + "description": "Relative URI to the target resource location for completed resources." + }, + "userId": { + "type": "string", + "description": "User Id" + }, + "operationId": { + "type": "string", + "description": "Operation Id." + }, + "errorResponse": { + "description": "Error details in case of failures.", + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "OperationState": { + "type": "string", + "description": "Enumeration of operation states.", + "x-ms-enum": { + "name": "OperationStateType", + "modelAsString": true + }, + "enum": [ + "Failed", + "NotStarted", + "Running", + "Succeeded" + ] + }, + "KnowledgebasesDTO": { + "type": "object", + "description": "Collection of knowledgebases owned by a user.", + "additionalProperties": false, + "properties": { + "knowledgebases": { + "type": "array", + "description": "Collection of knowledgebase records.", + "items": { + "$ref": "#/definitions/KnowledgebaseDTO" + } + } + } + }, + "KnowledgebaseDTO": { + "type": "object", + "description": "Response schema for CreateKb operation.", + "additionalProperties": false, + "properties": { + "id": { + "type": "string", + "description": "Unique id that identifies a knowledgebase." + }, + "hostName": { + "type": "string", + "description": "URL host name at which the knowledgebase is hosted." + }, + "lastAccessedTimestamp": { + "type": "string", + "description": "Time stamp at which the knowledgebase was last accessed (UTC)." + }, + "lastChangedTimestamp": { + "type": "string", + "description": "Time stamp at which the knowledgebase was last modified (UTC)." + }, + "lastPublishedTimestamp": { + "type": "string", + "description": "Time stamp at which the knowledgebase was last published (UTC)." + }, + "name": { + "type": "string", + "description": "Friendly name of the knowledgebase." + }, + "userId": { + "type": "string", + "description": "User who created / owns the knowledgebase." + }, + "urls": { + "type": "array", + "description": "URL sources from which Q-A were extracted and added to the knowledgebase.", + "items": { + "type": "string" + } + }, + "sources": { + "type": "array", + "description": "Custom sources from which Q-A were extracted or explicitly added to the knowledgebase.", + "items": { + "type": "string" + } + } + } + }, + "WordAlterationsDTO": { + "type": "object", + "description": "Collection of word alterations.", + "additionalProperties": false, + "required": [ + "wordAlterations" + ], + "properties": { + "wordAlterations": { + "type": "array", + "description": "Collection of word alterations.", + "maxLength": 10000, + "items": { + "$ref": "#/definitions/AlterationsDTO" + } + } + } + }, + "AlterationsDTO": { + "type": "object", + "description": "Collection of words that are synonyms.", + "additionalProperties": false, + "required": [ + "alterations" + ], + "properties": { + "alterations": { + "type": "array", + "description": "Words that are synonymous with each other.", + "maxLength": 20, + "minLength": 1, + "items": { + "type": "string" + } + } + } + }, + "EndpointKeysDTO": { + "type": "object", + "description": "Schema for EndpointKeys generate/refresh operations.", + "additionalProperties": false, + "properties": { + "primaryEndpointKey": { + "type": "string", + "description": "Primary Access Key." + }, + "secondaryEndpointKey": { + "type": "string", + "description": "Secondary Access Key." + }, + "installedVersion": { + "type": "string", + "description": "Current version of runtime." + }, + "lastStableVersion": { + "type": "string", + "description": "Latest version of runtime." + } + } + } + }, + "parameters": { + "Environment": { + "type": "string", + "name": "environment", + "in": "path", + "required": true, + "x-schema": { + "$ref": "#/definitions/KnowledgebaseEnvironment" + }, + "x-nullable": false, + "description": "Specifies whether environment is Test or Prod.", + "x-ms-enum": { + "name": "EnvironmentType", + "modelAsString": true + }, + "enum": [ + "Prod", + "Test" + ], + "x-ms-parameter-location": "method" + }, + "CreateKbPayload": { + "name": "createKbPayload", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CreateKbDTO" + }, + "x-nullable": true, + "description": "Post body of the request.", + "x-ms-parameter-location": "method" + }, + "UpdateKb": { + "name": "updateKb", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateKbOperationDTO" + }, + "x-nullable": true, + "description": "Post body of the request.", + "x-ms-parameter-location": "method" + }, + "ReplaceKb": { + "name": "replaceKb", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ReplaceKbDTO" + }, + "x-nullable": true, + "description": "An instance of ReplaceKbDTO which contains list of qnas to be uploaded", + "x-ms-parameter-location": "method" + }, + "KbId": { + "type": "string", + "name": "kbId", + "in": "path", + "required": true, + "x-nullable": false, + "description": "Knowledgebase id.", + "x-ms-parameter-location": "method" + }, + "OperationId": { + "type": "string", + "name": "operationId", + "in": "path", + "required": true, + "x-nullable": false, + "description": "Operation id.", + "x-ms-parameter-location": "method" + }, + "WordAlterations": { + "name": "wordAlterations", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WordAlterationsDTO" + }, + "x-nullable": true, + "description": "New alterations data.", + "x-ms-parameter-location": "method" + }, + "KeyType": { + "type": "string", + "name": "keyType", + "in": "path", + "required": true, + "x-nullable": false, + "description": "Type of Key", + "x-ms-parameter-location": "method" + }, + "Endpoint": { + "name": "Endpoint", + "description": "Supported Cognitive Services endpoints (protocol and hostname, for example: https://westus.api.cognitive.microsoft.com).", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulCreateKb.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulCreateKb.json new file mode 100644 index 000000000000..968922045d74 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulCreateKb.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "createKbPayload": { + "name": "QnA Maker FAQ", + "qnaList": [ + { + "id": 0, + "answer": "You can change the default message if you use the QnAMakerDialog. See this for details: https://docs.botframework.com/en-us/azure-bot-service/templates/qnamaker/#navtitle", + "source": "Custom Editorial", + "questions": [ + "How can I change the default message from QnA Maker?" + ], + "metadata": [] + }, + { + "id": 0, + "answer": "You can use our REST apis to manage your KB. See here for details: https://westus.dev.cognitive.microsoft.com/docs/services/58994a073d9e04097c7ba6fe/operations/58994a073d9e041ad42d9baa", + "source": "Custom Editorial", + "questions": [ + "How do I programmatically update my KB?" + ], + "metadata": [ + { + "name": "category", + "value": "api" + } + ] + } + ], + "urls": [ + "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", + "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq" + ], + "files": [ + { + "fileName": "SurfaceManual.pdf", + "fileUri": "https://download.microsoft.com/download/2/9/B/29B20383-302C-4517-A006-B0186F04BE28/surface-pro-4-user-guide-EN.pdf" + } + ] + } + }, + "responses": { + "202": { + "headers": {}, + "body": { + "operationState": "NotStarted", + "createdTimestamp": "2018-03-19T07:38:46Z", + "lastActionTimestamp": "2018-03-19T07:39:29Z", + "userId": "86bb8390-56c0-42c2-9f81-3de161981191", + "operationId": "03a4f4ce-30a6-4ec6-b436-02bcdf6153e1" + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulDelKb.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulDelKb.json new file mode 100644 index 000000000000..35391cbe6f62 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulDelKb.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "kbId": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff" + }, + "responses": { + "204": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulDownloadKb.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulDownloadKb.json new file mode 100644 index 000000000000..ac17a06b040c --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulDownloadKb.json @@ -0,0 +1,374 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "kbId": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff", + "environment": "Test" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "qnaDocuments": [ + { + "id": 1, + "answer": "You can change the default message if you use the QnAMakerDialog. See this for details: https://docs.botframework.com/en-us/azure-bot-service/templates/qnamaker/#navtitle", + "source": "Custom Editorial", + "questions": [ + "How can I change the default message from QnA Maker?" + ], + "metadata": [] + }, + { + "id": 2, + "answer": "You can use our REST apis to manage your KB. See here for details: https://westus.dev.cognitive.microsoft.com/docs/services/58994a073d9e04097c7ba6fe/operations/58994a073d9e041ad42d9baa", + "source": "Custom Editorial", + "questions": [ + "How do I programmatically update my KB?" + ], + "metadata": [ + { + "name": "category", + "value": "api" + } + ] + }, + { + "id": 3, + "answer": "QnA Maker provides an FAQ data source that you can query from your bot or application. Although developers will find this useful, content owners will especially benefit from this tool. QnA Maker is a completely no-code way of managing the content that powers your bot or application.", + "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", + "questions": [ + "Who is the target audience for the QnA Maker tool?" + ], + "metadata": [] + }, + { + "id": 4, + "answer": "

You can sign in with your Microsoft account

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

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

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

The tool supports the following file formats for ingestion:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Channels

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

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

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

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

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

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

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

Security and Privacy

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

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

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

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

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

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

Rate limiting

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

It can happen if:

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

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

Related Services

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

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

", + "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", + "questions": [ + "How does the Bot Framework relate to Cognitive Services?" + ], + "metadata": [] + }, + { + "id": 38, + "answer": "

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

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

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

", + "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", + "questions": [ + "What is Cortana Intelligence?" + ], + "metadata": [] + }, + { + "id": 39, + "answer": "

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

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

Direct Line is suitable for:

  • Mobile apps on iOS, Android, and Windows Phone, and others
  • Desktop applications on Windows, OSX, and more
  • Webpages where you need more customization than the embeddable Web Chat channel offers
  • Service-to-service applications
", + "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", + "questions": [ + "What is the Direct Line channel?" + ], + "metadata": [] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulGetAlts.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulGetAlts.json new file mode 100644 index 000000000000..d8ac5cf786a9 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulGetAlts.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "wordAlterations": [ + { + "alterations": [ + "qnamaker", + "qna maker" + ] + }, + { + "alterations": [ + "botframework", + "bot framework" + ] + }, + { + "alterations": [ + "webchat", + "web chat" + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulGetEpKeys.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulGetEpKeys.json new file mode 100644 index 000000000000..2b7f17e3d84f --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulGetEpKeys.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "primaryEndpointKey": "73e88a14-694a-44d5-883b-184a68aa8530", + "secondaryEndpointKey": "b2c98c16-ca31-4294-8626-6c57454a5063", + "installedVersion": "4.0.5", + "lastStableVersion": "4.0.6" + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulGetKb.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulGetKb.json new file mode 100644 index 000000000000..03ffcaa9d7a1 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulGetKb.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "kbId": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff", + "hostName": "https://myqnamakerbot.azurewebsites.net", + "lastAccessedTimestamp": "2018-03-16T10:59:46Z", + "lastChangedTimestamp": "2018-03-16T10:58:10Z", + "lastPublishedTimestamp": "2018-03-16T10:59:56Z", + "name": "My QnA Maker Bot", + "userId": "03a4f4ce-30a6-4ec6-b436-02bcdf6153e1", + "urls": [ + "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", + "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq" + ], + "sources": [ + "Custom Editorial", + "SurfaceManual.pdf" + ] + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulGetOps.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulGetOps.json new file mode 100644 index 000000000000..1769fd26215e --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulGetOps.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "operationId": "03a4f4ce-30a6-4ec6-b436-02bcdf6153e1" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "operationState": "Succeeded", + "createdTimestamp": "2018-03-19T07:38:46Z", + "lastActionTimestamp": "2018-03-19T07:39:29Z", + "resourceLocation": "https://westus.api.cognitive.microsoft.com/qnamaker/v4.0/knowledgebases/9d091697-fb8c-4ed5-9ac0-35bf8273bfff", + "userId": "86bb8390-56c0-42c2-9f81-3de161981191", + "operationId": "03a4f4ce-30a6-4ec6-b436-02bcdf6153e1" + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulKbsResponse.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulKbsResponse.json new file mode 100644 index 000000000000..a2442b4c773a --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulKbsResponse.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "knowledgebases": [ + { + "id": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff", + "hostName": "https://myqnamakerbot.azurewebsites.net", + "lastAccessedTimestamp": "2018-03-16T10:59:46Z", + "lastChangedTimestamp": "2018-03-16T10:58:10Z", + "lastPublishedTimestamp": "2018-03-16T10:59:56Z", + "name": "My QnA Maker Bot", + "userId": "03a4f4ce-30a6-4ec6-b436-02bcdf6153e1", + "urls": [ + "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", + "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq" + ], + "sources": [ + "Custom Editorial", + "SurfaceManual.pdf" + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulPubKb.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulPubKb.json new file mode 100644 index 000000000000..3bb3df661bf1 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulPubKb.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "kbId": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff" + }, + "responses": { + "204": { + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulRepKb.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulRepKb.json new file mode 100644 index 000000000000..ae1d74cf245e --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulRepKb.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "kbId": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff", + "replaceKb": { + "qnAList": [ + { + "id": 0, + "answer": "string", + "source": "string", + "questions": [ + "string" + ], + "metadata": [ + { + "name": "string", + "value": "string" + } + ] + } + ] + } + }, + "responses": { + "204": { + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulSetAlts.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulSetAlts.json new file mode 100644 index 000000000000..2c3387e88fc6 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulSetAlts.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "wordAlterations": { + "wordAlterations": [ + { + "alterations": [ + "qnamaker", + "qna maker" + ] + }, + { + "alterations": [ + "botframework", + "bot framework" + ] + }, + { + "alterations": [ + "webchat", + "web chat" + ] + } + ] + } + }, + "responses": { + "204": { + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulSetEpKeys.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulSetEpKeys.json new file mode 100644 index 000000000000..a2fcd4e250f0 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulSetEpKeys.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "keyType": "PrimaryKey" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "primaryEndpointKey": "73e88a14-694a-44d5-883b-184a68aa8530", + "secondaryEndpointKey": "b2c98c16-ca31-4294-8626-6c57454a5063", + "installedVersion": "4.0.5", + "lastStableVersion": "4.0.6" + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulUpdKb.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulUpdKb.json new file mode 100644 index 000000000000..7217c27d2591 --- /dev/null +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulUpdKb.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "kbId": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff", + "updateKb": { + "add": { + "qnaList": [ + { + "id": 0, + "answer": "You can change the default message if you use the QnAMakerDialog. See this for details: https://docs.botframework.com/en-us/azure-bot-service/templates/qnamaker/#navtitle", + "source": "Custom Editorial", + "questions": [ + "How can I change the default message from QnA Maker?" + ], + "metadata": [] + }, + { + "id": 0, + "answer": "You can use our REST apis to manage your KB. See here for details: https://westus.dev.cognitive.microsoft.com/docs/services/58994a073d9e04097c7ba6fe/operations/58994a073d9e041ad42d9baa", + "source": "Custom Editorial", + "questions": [ + "How do I programmatically update my KB?" + ], + "metadata": [ + { + "name": "category", + "value": "api" + } + ] + } + ], + "urls": [ + "https://docs.microsoft.com/en-us/azure/cognitive-services/Emotion/FAQ" + ], + "files": [ + { + "fileName": "SurfaceManual.pdf", + "fileUri": "https://download.microsoft.com/download/2/9/B/29B20383-302C-4517-A006-B0186F04BE28/surface-pro-4-user-guide-EN.pdf" + } + ] + }, + "delete": { + "ids": [ + 4, + 13, + 35 + ], + "sources": [ + "Custom Editorial" + ] + }, + "update": { + "name": "QnA Maker + Emotion API FAQ Bot", + "qnaList": [ + { + "id": 30, + "answer": "Yes, you can use our REST APIs to manage a KB. Please check our documentation for details.", + "source": "Custom Q&A", + "questions": { + "add": [ + "can I programmatically manage a KB?" + ], + "delete": [ + "How do I programmatically update my KB?" + ] + }, + "metadata": { + "delete": [ + { + "name": "category", + "value": "api" + } + ], + "add": [ + { + "name": "category", + "value": "programmatic" + } + ] + } + } + ], + "urls": [ + "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq" + ] + } + } + }, + "responses": { + "202": { + "headers": {}, + "body": { + "operationState": "NotStarted", + "createdTimestamp": "2018-03-19T07:38:46Z", + "lastActionTimestamp": "2018-03-19T07:39:29Z", + "userId": "86bb8390-56c0-42c2-9f81-3de161981191", + "operationId": "03a4f4ce-30a6-4ec6-b436-02bcdf6153e1" + } + } + } +} \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/SpellCheck/stable/v1.0/SpellCheck.json b/specification/cognitiveservices/data-plane/SpellCheck/stable/v1.0/SpellCheck.json index d1e2d1822c30..2c5b85f9bd9d 100644 --- a/specification/cognitiveservices/data-plane/SpellCheck/stable/v1.0/SpellCheck.json +++ b/specification/cognitiveservices/data-plane/SpellCheck/stable/v1.0/SpellCheck.json @@ -22,6 +22,15 @@ ] } }, + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "../../../Common/Parameters.json#/parameters/GlobalEndpoint" + } + ] + }, "host": "api.cognitive.microsoft.com", "basePath": "/bing/v7.0", "schemes": [ diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/readme.md b/specification/cognitiveservices/data-plane/TextAnalytics/readme.md index 13bb690d2276..3a4d6c8d4cac 100644 --- a/specification/cognitiveservices/data-plane/TextAnalytics/readme.md +++ b/specification/cognitiveservices/data-plane/TextAnalytics/readme.md @@ -118,7 +118,7 @@ The current release is `release_2_0`. A preview release `release_2_1` is also available. ``` yaml -tag: release_2_0 +tag: release_2_1 add-credentials: true ``` diff --git a/specification/cognitiveservices/data-plane/VideoSearch/stable/v1.0/VideoSearch.json b/specification/cognitiveservices/data-plane/VideoSearch/stable/v1.0/VideoSearch.json index 3d87a12b7a91..98ae1125b4e6 100644 --- a/specification/cognitiveservices/data-plane/VideoSearch/stable/v1.0/VideoSearch.json +++ b/specification/cognitiveservices/data-plane/VideoSearch/stable/v1.0/VideoSearch.json @@ -1,7 +1,7 @@ { "swagger": "2.0", "info": { - "title": "Video Search API", + "title": "Video Search Client", "description": "The Video Search API lets you search on Bing for video that are relevant to the user's search query, for insights about a video or for videos that are trending based on search requests made by others. This section provides technical details about the query parameters and headers that you use to request videos and the JSON response objects that contain them. For examples that show how to make requests, see [Searching the Web for Videos](https://docs.microsoft.com/azure/cognitive-services/bing-video-search/search-the-web).", "version": "1.0" }, @@ -22,6 +22,15 @@ ] } }, + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "../../../Common/Parameters.json#/parameters/GlobalEndpoint" + } + ] + }, "host": "api.cognitive.microsoft.com", "basePath": "/bing/v7.0", "schemes": [ diff --git a/specification/cognitiveservices/data-plane/VisualSearch/preview/v1.0/VisualSearch.json b/specification/cognitiveservices/data-plane/VisualSearch/preview/v1.0/VisualSearch.json index a6edb49ecbe5..8c89311b367b 100644 --- a/specification/cognitiveservices/data-plane/VisualSearch/preview/v1.0/VisualSearch.json +++ b/specification/cognitiveservices/data-plane/VisualSearch/preview/v1.0/VisualSearch.json @@ -1,7 +1,7 @@ { "swagger": "2.0", "info": { - "title": "Visual Search API", + "title": "Visual Search Client", "description": "Visual Search API lets you discover insights about an image such as visually similar images, shopping sources, and related searches. The API can also perform text recognition, identify entities (people, places, things), return other topical content for the user to explore, and more. For more information, see [Visual Search Overview](https://docs.microsoft.com/azure/cognitive-services/bing-visual-search/overview).", "version": "1.0" }, @@ -22,6 +22,15 @@ ] } }, + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "../../../Common/Parameters.json#/parameters/GlobalEndpoint" + } + ] + }, "host": "api.cognitive.microsoft.com", "basePath": "/bing/v7.0", "schemes": [ @@ -488,7 +497,7 @@ "type": "string" }, "encodingFormat": { - "description": "Encoding format (e.g., mp3, mp4, jpeg, etc).", + "description": "Encoding format (e.g., png, gif, jpeg, etc).", "readOnly": true, "type": "string" }, diff --git a/specification/cognitiveservices/data-plane/VisualSearch/readme.md b/specification/cognitiveservices/data-plane/VisualSearch/readme.md index cc2205e5e5d1..b79e7a9cc468 100644 --- a/specification/cognitiveservices/data-plane/VisualSearch/readme.md +++ b/specification/cognitiveservices/data-plane/VisualSearch/readme.md @@ -39,6 +39,7 @@ swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-sdk-for-js - repo: azure-sdk-for-node + - repo: azure-sdk-for-go ``` ## CSharp Settings diff --git a/specification/cognitiveservices/data-plane/WebSearch/stable/v1.0/WebSearch.json b/specification/cognitiveservices/data-plane/WebSearch/stable/v1.0/WebSearch.json index 98ee8cecc62c..2ee854933472 100644 --- a/specification/cognitiveservices/data-plane/WebSearch/stable/v1.0/WebSearch.json +++ b/specification/cognitiveservices/data-plane/WebSearch/stable/v1.0/WebSearch.json @@ -1,7 +1,7 @@ { "swagger": "2.0", "info": { - "title": "Web Search API", + "title": "Web Search Client", "description": "The Web Search API lets you send a search query to Bing and get back search results that include links to webpages, images, and more.", "version": "1.0" }, @@ -22,6 +22,15 @@ ] } }, + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "../../../Common/Parameters.json#/parameters/GlobalEndpoint" + } + ] + }, "host": "api.cognitive.microsoft.com", "basePath": "/bing/v7.0", "schemes": [ @@ -294,9 +303,9 @@ } }, "x-ms-examples": { - "Successful query": { - "$ref": "./examples//SuccessfulQueryRequest.json" - } + "Successful query": { + "$ref": "./examples//SuccessfulQueryRequest.json" + } } } } diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json index 20a160ae7423..f9d6903ce0b3 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json @@ -35,7 +35,7 @@ "description": "Create Cognitive Services Account. Accounts is a resource group wide resource type. It holds the keys for developer to access intelligent APIs. It's also the resource type for billing.", "operationId": "Accounts_Create", "x-ms-examples": { - "Get Account": { + "Create Account": { "$ref": "./examples/CreateAccount.json" } }, @@ -101,7 +101,7 @@ "description": "Updates a Cognitive Services account", "operationId": "Accounts_Update", "x-ms-examples": { - "Get Account": { + "Update Account": { "$ref": "./examples/UpdateAccount.json" } }, diff --git a/specification/compute/quickstart-templates/swagger.json b/specification/compute/quickstart-templates/swagger.json index d31427c555b3..a44fcedcd9f7 100644 --- a/specification/compute/quickstart-templates/swagger.json +++ b/specification/compute/quickstart-templates/swagger.json @@ -242,7 +242,7 @@ }, "outputs": { "type": "object", - "description": "Gets or sets key/value pairs that represent deploymentoutput." + "description": "Gets or sets key/value pairs that represent deployment output." }, "providers": { "type": "array", @@ -344,7 +344,7 @@ "required": [ "uri" ], - "description": "Entity representing the reference to the deployment paramaters." + "description": "Entity representing the reference to the deployment parameters." }, "Provider": { "properties": { diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/stable/2018-10-01/containerInstance.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/stable/2018-10-01/containerInstance.json index c160d9793841..c1fcd7ede62c 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/stable/2018-10-01/containerInstance.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/stable/2018-10-01/containerInstance.json @@ -322,6 +322,38 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerInstance/containerGroups/{containerGroupName}/start": { + "post": { + "operationId": "ContainerGroups_Start", + "x-ms-examples": { + "ContainerStart": { + "$ref": "./examples/ContainerGroupsStart.json" + } + }, + "summary": "Starts all containers in a container group.", + "description": "Starts all containers in a container group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ContainerGroupNameParameter" + } + ], + "responses": { + "204": { + "description": "NoContent" + } + }, + "x-ms-long-running-operation": true + } + }, "/providers/Microsoft.ContainerInstance/operations": { "get": { "tags": [ @@ -712,6 +744,10 @@ "description": "The CPU request of this container instance.", "type": "number", "format": "double" + }, + "gpu": { + "description": "The GPU request of this container instance.", + "$ref": "#/definitions/GpuResource" } } }, @@ -728,6 +764,38 @@ "description": "The CPU limit of this container instance.", "type": "number", "format": "double" + }, + "gpu": { + "description": "The GPU limit of this container instance.", + "$ref": "#/definitions/GpuResource" + } + } + }, + "GpuResource": { + "description": "The GPU resource.", + "type": "object", + "required": [ + "count", + "sku" + ], + "properties": { + "count": { + "description": "The count of the GPU resource.", + "type": "integer", + "format": "int32" + }, + "sku": { + "type": "string", + "description": "The SKU of the GPU resource.", + "enum": [ + "K80", + "P100", + "V100" + ], + "x-ms-enum": { + "name": "GpuSku", + "modelAsString": true + } } } }, @@ -1020,6 +1088,10 @@ "networkProfile": { "description": "The network profile information for a container group.", "$ref": "#/definitions/ContainerGroupNetworkProfile" + }, + "dnsConfig": { + "description": "The DNS config information for a container group.", + "$ref": "#/definitions/DnsConfiguration" } }, "required": [ @@ -1457,6 +1529,30 @@ } } }, + "DnsConfiguration": { + "description": "DNS configuration for the container group.", + "type": "object", + "required": [ + "nameServers" + ], + "properties": { + "nameServers": { + "description": "The DNS servers for the container group.", + "type": "array", + "items": { + "type": "string" + } + }, + "searchDomains": { + "description": "The DNS search domains for hostname lookup in the container group.", + "type": "string" + }, + "options": { + "description": "The DNS options for the container group.", + "type": "string" + } + } + }, "Resource": { "type": "object", "description": "The Resource model definition.", diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/stable/2018-10-01/examples/ContainerGroupsCreateOrUpdate.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/stable/2018-10-01/examples/ContainerGroupsCreateOrUpdate.json index 312d72858129..8218af17be94 100644 --- a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/stable/2018-10-01/examples/ContainerGroupsCreateOrUpdate.json +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/stable/2018-10-01/examples/ContainerGroupsCreateOrUpdate.json @@ -30,7 +30,11 @@ "resources": { "requests": { "cpu": 1, - "memoryInGB": 1.5 + "memoryInGB": 1.5, + "gpu": { + "count": 1, + "sku": "K80" + } } }, "volumeMounts": [ @@ -66,6 +70,11 @@ "networkProfile": { "id": "test-network-profile-id" }, + "dnsConfig": { + "nameServers": [ "1.1.1.1" ], + "searchDomains": "cluster.local svc.cluster.local", + "options": "ndots:2" + }, "imageRegistryCredentials": [], "ipAddress": { "ports": [ @@ -126,7 +135,11 @@ "resources": { "requests": { "cpu": 1, - "memoryInGB": 1.5 + "memoryInGB": 1.5, + "gpu": { + "count": 1, + "sku": "K80" + } } }, "volumeMounts": [ @@ -155,6 +168,11 @@ "workspaceKey": "" } }, + "dnsConfig": { + "nameServers": [ "1.1.1.1" ], + "searchDomains": "cluster.local svc.cluster.local", + "options": "ndots:2" + }, "imageRegistryCredentials": [], "ipAddress": { "ip": "10.0.0.1", @@ -212,7 +230,11 @@ "resources": { "requests": { "cpu": 1, - "memoryInGB": 1.5 + "memoryInGB": 1.5, + "gpu": { + "count": 1, + "sku": "K80" + } } }, "volumeMounts": [ @@ -235,6 +257,9 @@ } } ], + "dnsConfig": { + "nameServers": [ "1.1.1.1" ] + }, "imageRegistryCredentials": [], "ipAddress": { "ip": "10.0.0.1", diff --git a/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/stable/2018-10-01/examples/ContainerGroupsStart.json b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/stable/2018-10-01/examples/ContainerGroupsStart.json new file mode 100644 index 000000000000..ceaa1376b456 --- /dev/null +++ b/specification/containerinstance/resource-manager/Microsoft.ContainerInstance/stable/2018-10-01/examples/ContainerGroupsStart.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2018-10-01", + "resourceGroupName": "demo", + "containerGroupName": "demo1" + }, + "responses": { + "204": {} + } + } \ No newline at end of file diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2018-09-01/containerregistry_build.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2018-09-01/containerregistry_build.json index 6dccd3221145..38cbcb137517 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2018-09-01/containerregistry_build.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/stable/2018-09-01/containerregistry_build.json @@ -1173,6 +1173,10 @@ "contextPath": { "description": "The URL(absolute or relative) of the source context for the task step.", "type": "string" + }, + "contextAccessToken": { + "description": "The token (git PAT or SAS token of storage account blob) associated with the context for a step.", + "type": "string" } }, "discriminator": "type" @@ -1507,6 +1511,10 @@ "contextPath": { "description": "The URL(absolute or relative) of the source context for the task step.", "type": "string" + }, + "contextAccessToken": { + "description": "The token (git PAT or SAS token of storage account blob) associated with the context for a step.", + "type": "string" } }, "discriminator": "type" diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/cosmos-db.json index 64c15ce756b3..8a26a888c30a 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/cosmos-db.json @@ -1264,7 +1264,7 @@ "x-ms-examples": { "CosmosDBDatabaseGetMetricDefinitions": { "$ref": "./examples/CosmosDBDatabaseGetMetricDefinitions.json" } }, - "description": "Retrieves metric defintions for the given database.", + "description": "Retrieves metric definitions for the given database.", "parameters": [ { "$ref": "#/parameters/subscriptionIdParameter" @@ -1301,7 +1301,7 @@ "x-ms-examples": { "CosmosDBCollectionGetMetricDefinitions": { "$ref": "./examples/CosmosDBCollectionGetMetricDefinitions.json" } }, - "description": "Retrieves metric defintions for the given collection.", + "description": "Retrieves metric definitions for the given collection.", "parameters": [ { "$ref": "#/parameters/subscriptionIdParameter" @@ -1890,6 +1890,10 @@ "id":{ "type": "string", "description": "Resource ID of a subnet, for example: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}." + }, + "ignoreMissingVNetServiceEndpoint":{ + "type": "boolean", + "description": "Create firewall rule before the virtual network has vnet service endpoint enabled." } } }, @@ -2005,7 +2009,7 @@ "partitionId": { "readOnly": true, "type": "string", - "description": "The parition id (GUID identifier) of the usages." + "description": "The partition id (GUID identifier) of the usages." }, "partitionKeyRangeId": { "readOnly": true, @@ -2322,7 +2326,7 @@ "partitionId": { "readOnly": true, "type": "string", - "description": "The parition id (GUID identifier) of the metric values." + "description": "The partition id (GUID identifier) of the metric values." }, "partitionKeyRangeId": { "readOnly": true, diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/examples/CosmosDBDatabaseAccountCreateMax.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/examples/CosmosDBDatabaseAccountCreateMax.json index 320bb71bf35d..353a2462d9a7 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/examples/CosmosDBDatabaseAccountCreateMax.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/examples/CosmosDBDatabaseAccountCreateMax.json @@ -14,7 +14,8 @@ "isVirtualNetworkFilterEnabled": true, "virtualNetworkRules": [ { - "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "ignoreMissingVNetServiceEndpoint": false } ], "locations": [ diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/examples/CosmosDBDatabaseAccountCreateMulti.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/examples/CosmosDBDatabaseAccountCreateMulti.json index 62fb15aabfcd..65db2f69123f 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/examples/CosmosDBDatabaseAccountCreateMulti.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/examples/CosmosDBDatabaseAccountCreateMulti.json @@ -15,7 +15,8 @@ "enableMultipleWriteLocations": true, "virtualNetworkRules": [ { - "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "ignoreMissingVNetServiceEndpoint": false } ], "locations": [ diff --git a/specification/customer-insights/resource-manager/Microsoft.CustomerInsights/stable/2017-01-01/customer-insights.json b/specification/customer-insights/resource-manager/Microsoft.CustomerInsights/stable/2017-01-01/customer-insights.json index 5329c7ccd0eb..22675f81ce9d 100644 --- a/specification/customer-insights/resource-manager/Microsoft.CustomerInsights/stable/2017-01-01/customer-insights.json +++ b/specification/customer-insights/resource-manager/Microsoft.CustomerInsights/stable/2017-01-01/customer-insights.json @@ -690,13 +690,13 @@ ], "responses": { "200": { - "description": "OK. Successfully created the interation.", + "description": "OK. Successfully created the interaction.", "schema": { "$ref": "#/definitions/InteractionResourceFormat" } }, "202": { - "description": "Accepted. The create interation operation is accepted." + "description": "Accepted. The create interaction operation is accepted." } }, "x-ms-long-running-operation": true @@ -2413,7 +2413,7 @@ "in": "query", "required": true, "type": "string", - "description": "The user ID. Use * to retreive hub level views." + "description": "The user ID. Use * to retrieve hub level views." } ], "responses": { @@ -2440,7 +2440,7 @@ "$ref": "./examples/ViewsCreateOrUpdate.json" } }, - "description": "Creates a view or updates an exisiting view in the hub.", + "description": "Creates a view or updates an existing view in the hub.", "parameters": [ { "name": "resourceGroupName", @@ -2534,7 +2534,7 @@ "in": "query", "required": true, "type": "string", - "description": "The user ID. Use * to retreive hub level view." + "description": "The user ID. Use * to retrieve hub level view." } ], "responses": { @@ -2590,7 +2590,7 @@ "in": "query", "required": true, "type": "string", - "description": "The user ID. Use * to retreive hub level view." + "description": "The user ID. Use * to retrieve hub level view." } ], "responses": { @@ -3316,7 +3316,7 @@ "properties": { "apiEntitySetName": { "type": "string", - "description": "The api entity set name. This becomes the odata entity set name for the entity Type being refered in this object." + "description": "The api entity set name. This becomes the odata entity set name for the entity Type being referred in this object." }, "entityType": { "type": "string", @@ -3446,7 +3446,7 @@ }, "isRequired": { "type": "boolean", - "description": "Whether property value is required on instances, IsRequired field only for Intercation. Profile Instance will not check for required field." + "description": "Whether property value is required on instances, IsRequired field only for Interaction. Profile Instance will not check for required field." }, "propertyId": { "type": "string", @@ -3495,11 +3495,11 @@ }, "primaryKey": { "type": "string", - "description": "Primary key assiciated with the policy." + "description": "Primary key associated with the policy." }, "secondaryKey": { "type": "string", - "description": "Secondary key assiciated with the policy." + "description": "Secondary key associated with the policy." } }, "description": "The authorization policy." @@ -3675,7 +3675,7 @@ "type": "string", "readOnly": true, "format": "date-time", - "description": "The last monified time." + "description": "The last modified time." }, "state": { "type": "string", @@ -3729,7 +3729,7 @@ "description": "The error limit allowed while importing data." } }, - "description": "The error mangement." + "description": "The error management." }, "ConnectorMappingFormat": { "required": [ @@ -3917,7 +3917,7 @@ "type": "string", "readOnly": true, "format": "date-time", - "description": "The last monified time." + "description": "The last modified time." }, "entityType": { "type": "string", @@ -4446,7 +4446,7 @@ }, "referenceOnly": { "type": "boolean", - "description": "Indicating whether the link is reference only link. This flag is ingored if the Mappings are defined. If the mappings are not defined and it is set to true, links processing will not create or update profiles." + "description": "Indicating whether the link is reference only link. This flag is ignored if the Mappings are defined. If the mappings are not defined and it is set to true, links processing will not create or update profiles." }, "operationType": { "type": "string", @@ -5060,7 +5060,7 @@ "description": "The response of list connector operation." }, "ConnectorMappingResourceFormat": { - "description": "The c onnector mapping resource format.", + "description": "The connector mapping resource format.", "properties": { "properties": { "x-ms-client-flatten": true, diff --git a/specification/customer-insights/resource-manager/Microsoft.CustomerInsights/stable/2017-04-26/customer-insights.json b/specification/customer-insights/resource-manager/Microsoft.CustomerInsights/stable/2017-04-26/customer-insights.json index 2f83f86f71e1..3c0353f8a491 100644 --- a/specification/customer-insights/resource-manager/Microsoft.CustomerInsights/stable/2017-04-26/customer-insights.json +++ b/specification/customer-insights/resource-manager/Microsoft.CustomerInsights/stable/2017-04-26/customer-insights.json @@ -688,13 +688,13 @@ ], "responses": { "200": { - "description": "OK. Successfully created the interation.", + "description": "OK. Successfully created the interaction.", "schema": { "$ref": "#/definitions/InteractionResourceFormat" } }, "202": { - "description": "Accepted. The create interation operation is accepted." + "description": "Accepted. The create interaction operation is accepted." } }, "x-ms-long-running-operation": true @@ -2411,7 +2411,7 @@ "in": "query", "required": true, "type": "string", - "description": "The user ID. Use * to retreive hub level views." + "description": "The user ID. Use * to retrieve hub level views." } ], "responses": { @@ -2438,7 +2438,7 @@ "$ref": "./examples/ViewsCreateOrUpdate.json" } }, - "description": "Creates a view or updates an exisiting view in the hub.", + "description": "Creates a view or updates an existing view in the hub.", "parameters": [ { "name": "resourceGroupName", @@ -2532,7 +2532,7 @@ "in": "query", "required": true, "type": "string", - "description": "The user ID. Use * to retreive hub level view." + "description": "The user ID. Use * to retrieve hub level view." } ], "responses": { @@ -2588,7 +2588,7 @@ "in": "query", "required": true, "type": "string", - "description": "The user ID. Use * to retreive hub level view." + "description": "The user ID. Use * to retrieve hub level view." } ], "responses": { @@ -3685,7 +3685,7 @@ "properties": { "apiEntitySetName": { "type": "string", - "description": "The api entity set name. This becomes the odata entity set name for the entity Type being refered in this object." + "description": "The api entity set name. This becomes the odata entity set name for the entity Type being referred in this object." }, "entityType": { "type": "string", @@ -3815,7 +3815,7 @@ }, "isRequired": { "type": "boolean", - "description": "Whether property value is required on instances, IsRequired field only for Intercation. Profile Instance will not check for required field." + "description": "Whether property value is required on instances, IsRequired field only for Interaction. Profile Instance will not check for required field." }, "propertyId": { "type": "string", @@ -3864,11 +3864,11 @@ }, "primaryKey": { "type": "string", - "description": "Primary key assiciated with the policy." + "description": "Primary key associated with the policy." }, "secondaryKey": { "type": "string", - "description": "Secondary key assiciated with the policy." + "description": "Secondary key associated with the policy." } }, "description": "The authorization policy." @@ -4044,7 +4044,7 @@ "type": "string", "readOnly": true, "format": "date-time", - "description": "The last monified time." + "description": "The last modified time." }, "state": { "type": "string", @@ -4098,7 +4098,7 @@ "description": "The error limit allowed while importing data." } }, - "description": "The error mangement." + "description": "The error management." }, "ConnectorMappingFormat": { "required": [ @@ -4286,7 +4286,7 @@ "type": "string", "readOnly": true, "format": "date-time", - "description": "The last monified time." + "description": "The last modified time." }, "entityType": { "type": "string", @@ -4845,7 +4845,7 @@ }, "referenceOnly": { "type": "boolean", - "description": "Indicating whether the link is reference only link. This flag is ingored if the Mappings are defined. If the mappings are not defined and it is set to true, links processing will not create or update profiles." + "description": "Indicating whether the link is reference only link. This flag is ignored if the Mappings are defined. If the mappings are not defined and it is set to true, links processing will not create or update profiles." }, "operationType": { "type": "string", @@ -5472,7 +5472,7 @@ "description": "The response of list connector operation." }, "ConnectorMappingResourceFormat": { - "description": "The c onnector mapping resource format.", + "description": "The connector mapping resource format.", "properties": { "properties": { "x-ms-client-flatten": true, @@ -6412,7 +6412,7 @@ "signalsUsed": { "type": "integer", "readOnly": true, - "description": "The singnas used." + "description": "The signals used." }, "modelVersion": { "type": "string", diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/databox.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/databox.json index e36656b72347..bdc93069e144 100644 --- a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/databox.json +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/databox.json @@ -147,7 +147,7 @@ } } } - }, + }, "/subscriptions/{subscriptionId}/providers/Microsoft.DataBox/locations/{location}/validateAddress": { "post": { "tags": [ @@ -305,7 +305,7 @@ }, "JobsGet5": { "$ref": "./examples/JobsGet5.json" - } + } } }, "put": { @@ -397,11 +397,11 @@ }, "x-ms-long-running-operation": true, "x-ms-examples": { - "JobsDelete": { - "$ref": "./examples/JobsDelete.json" - } + "JobsDelete": { + "$ref": "./examples/JobsDelete.json" } - }, + } + }, "patch": { "tags": [ "Jobs" @@ -455,11 +455,11 @@ } }, "x-ms-long-running-operation": true, - "x-ms-examples": { - "JobsPatch": { - "$ref": "./examples/JobsPatch.json" - } + "x-ms-examples": { + "JobsPatch": { + "$ref": "./examples/JobsPatch.json" } + } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBox/jobs/{jobName}/bookShipmentPickUp": { @@ -555,10 +555,10 @@ } }, "x-ms-examples": { - "JobsCancelPost": { - "$ref": "./examples/JobsCancelPost.json" - } + "JobsCancelPost": { + "$ref": "./examples/JobsCancelPost.json" } + } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBox/jobs/{jobName}/listCredentials": { @@ -921,6 +921,18 @@ "description": "Total amount of data to be processed by the job.", "type": "integer", "readOnly": true + }, + "filesProcessed": { + "format": "int64", + "description": "Number of files processed by the job as of now.", + "type": "integer", + "readOnly": true + }, + "totalFilesToProcess": { + "format": "int64", + "description": "Total number of files to be processed by the job.", + "type": "integer", + "readOnly": true } } }, @@ -1307,17 +1319,90 @@ } }, "DestinationAccountDetails": { - "description": "Details for the destination account.", + "description": "Details of the destination of the data", "required": [ - "accountId" + "dataDestinationType" ], "type": "object", "properties": { + "dataDestinationType": { + "description": "Data Destination Type.", + "enum": [ + "UnknownType", + "StorageAccount", + "ManagedDisk" + ], + "type": "string", + "x-ms-enum": { + "name": "DataDestinationType", + "modelAsExtensible": true, + "values": [ + { + "value": "UnknownType", + "description": "Unknown type." + }, + { + "value": "StorageAccount", + "description": "Storage Accounts ." + }, + { + "value": "ManagedDisk", + "description": "Azure Managed disk storage." + } + ] + } + }, "accountId": { - "description": "Destination storage account id.", + "description": "Arm Id of the destination where the data has to be moved.", "type": "string" } - } + }, + "discriminator": "dataDestinationType" + }, + "DestinationManagedDiskDetails": { + "description": "Details for the destination compute disks.", + "required": [ + "resourceGroupId", + "stagingStorageAccountId", + "dataDestinationType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DestinationAccountDetails" + } + ], + "properties": { + "resourceGroupId": { + "description": "Destination Resource Group Id where the Compute disks should be created.", + "type": "string" + }, + "stagingStorageAccountId": { + "description": "Arm Id of the storage account that can be used to copy the vhd for staging.", + "type": "string" + } + }, + "x-ms-discriminator-value": "ManagedDisk" + }, + "DestinationStorageAccountDetails": { + "description": "Details for the destination storage account.", + "required": [ + "storageAccountId", + "dataDestinationType" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DestinationAccountDetails" + } + ], + "properties": { + "storageAccountId": { + "description": "Destination Storage Account Arm Id.", + "type": "string" + } + }, + "x-ms-discriminator-value": "StorageAccount" }, "DestinationToServiceLocationMap": { "description": "Map of destination location to service location", @@ -2071,7 +2156,7 @@ } }, "x-ms-azure-resource": true - }, + }, "ShareCredentialDetails": { "description": "Credential details of the shares in account.", "type": "object", @@ -2088,7 +2173,8 @@ "HCS", "BlockBlob", "PageBlob", - "AzureFile" + "AzureFile", + "ManagedDisk" ], "type": "string", "readOnly": true, @@ -2115,6 +2201,10 @@ { "value": "AzureFile", "description": "Azure storage file format." + }, + { + "value": "ManagedDisk", + "description": "Azure Compute Disk." } ] } @@ -2411,7 +2501,8 @@ "Country", "Region", "Feature", - "OfferType" + "OfferType", + "NoSubscriptionInfo" ], "type": "string", "readOnly": true, @@ -2429,7 +2520,7 @@ }, { "value": "Region", - "description": "SKU is not available to push data to the requested storage account region." + "description": "SKU is not available to push data to the requested Azure region." }, { "value": "Feature", @@ -2438,6 +2529,10 @@ { "value": "OfferType", "description": "Subscription does not have required offer types for the SKU." + }, + { + "value": "NoSubscriptionInfo", + "description": "Subscription has not registered to Microsoft.DataBox and Service does not have the subscription notification." } ] } diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/AvailableSkusPost.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/AvailableSkusPost.json index 3a73646a8423..edb90016b3de 100644 --- a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/AvailableSkusPost.json +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/AvailableSkusPost.json @@ -11,7 +11,7 @@ ], "User-Agent": [ "FxVersion/4.6.26614.01", - "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.0.0" + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" ], "Content-Type": [ "application/json; charset=utf-8" diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/BookShipmentPickupPost.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/BookShipmentPickupPost.json index d0cc988ee1e9..09ce8ab47d5a 100644 --- a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/BookShipmentPickupPost.json +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/BookShipmentPickupPost.json @@ -12,7 +12,7 @@ ], "User-Agent": [ "FxVersion/4.6.26614.01", - "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.0.0" + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" ], "Content-Type": [ "application/json; charset=utf-8" diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsCancelPost.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsCancelPost.json index 6c41a02d2b74..c71352be1d9e 100644 --- a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsCancelPost.json +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsCancelPost.json @@ -1,8 +1,8 @@ { "parameters": { "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", - "resourceGroupName": "SdkRg8120", - "jobName": "SdkJob7196", + "resourceGroupName": "SdkRg9836", + "jobName": "SdkJob8367", "api-version": "2018-01-01", "$expand": "details", "x-ms-client-request-id": [ @@ -13,7 +13,7 @@ ], "User-Agent": [ "FxVersion/4.6.26614.01", - "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.0.0" + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" ], "Content-Type": [ "application/json; charset=utf-8" diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsCreate.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsCreate.json index 6ca49114f1d1..65eb998c1695 100644 --- a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsCreate.json +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsCreate.json @@ -1,8 +1,8 @@ { "parameters": { "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", - "resourceGroupName": "SdkRg8120", - "jobName": "SdkJob7196", + "resourceGroupName": "SdkRg9836", + "jobName": "SdkJob8367", "api-version": "2018-01-01", "x-ms-client-request-id": [ "ee686d79-42c2-4b01-9afe-5e99f4cabfee" @@ -12,7 +12,7 @@ ], "User-Agent": [ "FxVersion/4.6.26614.01", - "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.0.0" + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" ], "Content-Type": [ "application/json; charset=utf-8" @@ -44,7 +44,11 @@ }, "destinationAccountDetails": [ { - "accountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount" + "storageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount" + }, + { + "stagingStorageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount", + "resourceGroupId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt" } ] } @@ -73,8 +77,8 @@ "sku": { "name": "DataBox" }, - "name": "SdkJob7196", - "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg8120/providers/Microsoft.DataBox/jobs/SdkJob7196", + "name": "SdkJob8367", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg9836/providers/Microsoft.DataBox/jobs/SdkJob8367", "type": "Microsoft.DataBox/jobs" } } diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsDelete.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsDelete.json index 4176101c29be..8b481e5adb1b 100644 --- a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsDelete.json +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsDelete.json @@ -1,8 +1,8 @@ { "parameters": { "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", - "resourceGroupName": "SdkRg8120", - "jobName": "SdkJob7196", + "resourceGroupName": "SdkRg9836", + "jobName": "SdkJob8367", "api-version": "2018-01-01", "$expand": "details", "x-ms-client-request-id": [ @@ -13,7 +13,7 @@ ], "User-Agent": [ "FxVersion/4.6.26614.01", - "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.0.0" + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" ] }, "responses": { diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet.json index 9116e659a520..bef4a96185f2 100644 --- a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet.json +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet.json @@ -1,12 +1,12 @@ { "parameters": { "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", - "resourceGroupName": "SdkRg8120", - "jobName": "SdkJob7196", + "resourceGroupName": "SdkRg9836", + "jobName": "SdkJob8367", "api-version": "2018-01-01", "User-Agent": [ "FxVersion/4.6.26614.01", - "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.0.0" + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" ] }, "responses": { @@ -24,8 +24,8 @@ "sku": { "name": "DataBox" }, - "name": "SdkJob7196", - "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg8120/providers/Microsoft.DataBox/jobs/SdkJob7196", + "name": "SdkJob8367", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg9836/providers/Microsoft.DataBox/jobs/SdkJob8367", "type": "Microsoft.DataBox/jobs" } } diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet1.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet1.json index 9116e659a520..c784056a566b 100644 --- a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet1.json +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet1.json @@ -2,11 +2,11 @@ "parameters": { "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", "resourceGroupName": "SdkRg8120", - "jobName": "SdkJob7196", + "jobName": "SdkJob8367", "api-version": "2018-01-01", "User-Agent": [ "FxVersion/4.6.26614.01", - "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.0.0" + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" ] }, "responses": { @@ -24,8 +24,8 @@ "sku": { "name": "DataBox" }, - "name": "SdkJob7196", - "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg8120/providers/Microsoft.DataBox/jobs/SdkJob7196", + "name": "SdkJob8367", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg8120/providers/Microsoft.DataBox/jobs/SdkJob8367", "type": "Microsoft.DataBox/jobs" } } diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet2.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet2.json index b32c673e9395..d970464ffdbf 100644 --- a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet2.json +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet2.json @@ -1,8 +1,8 @@ { "parameters": { "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", - "resourceGroupName": "SdkRg8120", - "jobName": "SdkJob7196", + "resourceGroupName": "SdkRg9836", + "jobName": "SdkJob8367", "api-version": "2018-01-01", "$expand": "details", "x-ms-client-request-id": [ @@ -13,7 +13,7 @@ ], "User-Agent": [ "FxVersion/4.6.26614.01", - "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.0.0" + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" ] }, "responses": { @@ -133,7 +133,11 @@ }, "destinationAccountDetails": [ { - "accountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount" + "storageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount" + }, + { + "stagingStorageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount", + "resourceGroupId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt" } ], "errorDetails": [], @@ -146,8 +150,8 @@ "sku": { "name": "DataBox" }, - "name": "SdkJob7196", - "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg8120/providers/Microsoft.DataBox/jobs/SdkJob7196", + "name": "SdkJob8367", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg9836/providers/Microsoft.DataBox/jobs/SdkJob8367", "type": "Microsoft.DataBox/jobs" } } diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet3.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet3.json index 0fc5ff08cfdf..e2c23b5e3497 100644 --- a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet3.json +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet3.json @@ -1,8 +1,8 @@ { "parameters": { "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", - "resourceGroupName": "SdkRg8120", - "jobName": "SdkJob7196", + "resourceGroupName": "SdkRg9836", + "jobName": "SdkJob8367", "api-version": "2018-01-01", "$expand": "details", "x-ms-client-request-id": [ @@ -13,7 +13,7 @@ ], "User-Agent": [ "FxVersion/4.6.26614.01", - "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.0.0" + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" ] }, "responses": { @@ -133,7 +133,11 @@ }, "destinationAccountDetails": [ { - "accountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount" + "storageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount" + }, + { + "stagingStorageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount", + "resourceGroupId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt" } ], "errorDetails": [], @@ -146,8 +150,8 @@ "sku": { "name": "DataBox" }, - "name": "SdkJob7196", - "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg8120/providers/Microsoft.DataBox/jobs/SdkJob7196", + "name": "SdkJob8367", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg9836/providers/Microsoft.DataBox/jobs/SdkJob8367", "type": "Microsoft.DataBox/jobs" } } diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet4.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet4.json index 70ca00535aff..bf3086f81943 100644 --- a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet4.json +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet4.json @@ -1,8 +1,8 @@ { "parameters": { "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", - "resourceGroupName": "SdkRg8120", - "jobName": "SdkJob7196", + "resourceGroupName": "SdkRg9836", + "jobName": "SdkJob8367", "api-version": "2018-01-01", "$expand": "details", "x-ms-client-request-id": [ @@ -13,7 +13,7 @@ ], "User-Agent": [ "FxVersion/4.6.26614.01", - "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.0.0" + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" ] }, "responses": { @@ -104,7 +104,11 @@ }, "destinationAccountDetails": [ { - "accountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount" + "storageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount" + }, + { + "stagingStorageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount", + "resourceGroupId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt" } ], "errorDetails": [], @@ -118,8 +122,8 @@ "sku": { "name": "DataBox" }, - "name": "SdkJob7196", - "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg8120/providers/Microsoft.DataBox/jobs/SdkJob7196", + "name": "SdkJob8367", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg9836/providers/Microsoft.DataBox/jobs/SdkJob8367", "type": "Microsoft.DataBox/jobs" } } diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet5.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet5.json index 6261006dab2f..4f8570c50369 100644 --- a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet5.json +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsGet5.json @@ -1,8 +1,8 @@ { "parameters": { "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", - "resourceGroupName": "SdkRg8120", - "jobName": "SdkJob7196", + "resourceGroupName": "SdkRg9836", + "jobName": "SdkJob8367", "api-version": "2018-01-01", "$expand": "details", "x-ms-client-request-id": [ @@ -13,7 +13,7 @@ ], "User-Agent": [ "FxVersion/4.6.26614.01", - "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.0.0" + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" ] }, "responses": { @@ -76,7 +76,11 @@ }, "destinationAccountDetails": [ { - "accountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount" + "storageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount" + }, + { + "stagingStorageAccountId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt/providers/Microsoft.Storage/storageAccounts/databoxbvttestaccount", + "resourceGroupId": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourcegroups/databoxbvt" } ], "errorDetails": [], @@ -91,8 +95,8 @@ "sku": { "name": "DataBox" }, - "name": "SdkJob7196", - "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg8120/providers/Microsoft.DataBox/jobs/SdkJob7196", + "name": "SdkJob8367", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg9836/providers/Microsoft.DataBox/jobs/SdkJob8367", "type": "Microsoft.DataBox/jobs" } } diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsList.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsList.json index 3f683214b99d..b4e79f598e19 100644 --- a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsList.json +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsList.json @@ -11,7 +11,7 @@ ], "User-Agent": [ "FxVersion/4.6.26614.01", - "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.0.0" + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" ] }, "responses": { diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsListByResourceGroup.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsListByResourceGroup.json index 6d811a3a2cb4..c72f92c28222 100644 --- a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsListByResourceGroup.json +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsListByResourceGroup.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", - "resourceGroupName": "SdkRg8120", + "resourceGroupName": "SdkRg9836", "api-version": "2018-01-01", "$expand": "details", "x-ms-client-request-id": [ @@ -12,7 +12,7 @@ ], "User-Agent": [ "FxVersion/4.6.26614.01", - "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.0.0" + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" ] }, "responses": { @@ -32,8 +32,8 @@ "sku": { "name": "DataBox" }, - "name": "SdkJob7196", - "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg8120/providers/Microsoft.DataBox/jobs/SdkJob7196", + "name": "SdkJob8367", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg9836/providers/Microsoft.DataBox/jobs/SdkJob8367", "type": "Microsoft.DataBox/jobs" } ] diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsListCredentials.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsListCredentials.json index 4f2db17c7dda..3871bbbc49cf 100644 --- a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsListCredentials.json +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsListCredentials.json @@ -12,7 +12,7 @@ ], "User-Agent": [ "FxVersion/4.6.26614.01", - "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.0.0" + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" ] }, "responses": { diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsPatch.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsPatch.json index 4239ba14e7c0..c4bd40281503 100644 --- a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsPatch.json +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/JobsPatch.json @@ -1,8 +1,8 @@ { "parameters": { "subscriptionId": "fa68082f-8ff7-4a25-95c7-ce9da541242f", - "resourceGroupName": "SdkRg8120", - "jobName": "SdkJob7196", + "resourceGroupName": "SdkRg9836", + "jobName": "SdkJob8367", "api-version": "2018-01-01", "$expand": "details", "x-ms-client-request-id": [ @@ -13,7 +13,7 @@ ], "User-Agent": [ "FxVersion/4.6.26614.01", - "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.0.0" + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" ], "Content-Type": [ "application/json; charset=utf-8" @@ -64,8 +64,8 @@ "sku": { "name": "DataBox" }, - "name": "SdkJob7196", - "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg8120/providers/Microsoft.DataBox/jobs/SdkJob7196", + "name": "SdkJob8367", + "id": "/subscriptions/fa68082f-8ff7-4a25-95c7-ce9da541242f/resourceGroups/SdkRg9836/providers/Microsoft.DataBox/jobs/SdkJob8367", "type": "Microsoft.DataBox/jobs" } } diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/OperationsGet.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/OperationsGet.json index 994dd06680ba..9d38e7506c0b 100644 --- a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/OperationsGet.json +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/OperationsGet.json @@ -9,7 +9,7 @@ ], "User-Agent": [ "FxVersion/4.6.26614.01", - "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.0.0" + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" ] }, "responses": { diff --git a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/ValidateAddressPost.json b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/ValidateAddressPost.json index 4471fd16f463..864fd09dd723 100644 --- a/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/ValidateAddressPost.json +++ b/specification/databox/resource-manager/Microsoft.DataBox/stable/2018-01-01/examples/ValidateAddressPost.json @@ -11,7 +11,7 @@ ], "User-Agent": [ "FxVersion/4.6.26614.01", - "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.0.0" + "Microsoft.Azure.Management.DataBox.DataBoxManagementClient/1.1.0" ], "Content-Type": [ "application/json; charset=utf-8" diff --git a/specification/databox/resource-manager/readme.md b/specification/databox/resource-manager/readme.md index c19f5106c848..aee1a57f46a0 100644 --- a/specification/databox/resource-manager/readme.md +++ b/specification/databox/resource-manager/readme.md @@ -53,8 +53,8 @@ swagger-to-sdk: - repo: azure-sdk-for-js - repo: azure-sdk-for-node - repo: azure-sdk-for-go - - repo: azure-sdk-for-ruby - repo: azure-sdk-for-java + - repo: azure-sdk-for-ruby after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_databox'] ``` @@ -105,30 +105,7 @@ python: ## Ruby -These settings apply only when `--ruby` is specified on the command line. - -``` yaml -package-name: azure_mgmt_databox -package-version: "0.0.1" -azure-arm: true -``` - -### Ruby multi-api - -``` yaml $(ruby) && $(multiapi) -batch: - - tag: package-2018-01 -``` - -### Tag: package-2018-01 and ruby - -These settings apply only when `--tag=package-2018-01 --ruby` is specified on the command line. -Please also specify `--ruby-sdks-folder=`. - -``` yaml $(tag) == 'package-2018-01' && $(ruby) -namespace: "Azure::Compute::Mgmt::V2018_01_01" -output-folder: $(ruby-sdks-folder)/management/azure_mgmt_databox/lib -``` +See configuration in [readme.ruby.md](./readme.ruby.md) ## Go diff --git a/specification/databox/resource-manager/readme.ruby.md b/specification/databox/resource-manager/readme.ruby.md new file mode 100644 index 000000000000..3f6aec90e7e4 --- /dev/null +++ b/specification/databox/resource-manager/readme.ruby.md @@ -0,0 +1,26 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +``` yaml $(ruby) +package-name: azure_mgmt_databox +package-version: "0.0.1" +azure-arm: true +``` + +### Ruby multi-api + +``` yaml $(ruby) && $(multiapi) +batch: + - tag: package-2018-01 +``` + +### Tag: package-2018-01 and ruby + +These settings apply only when `--tag=package-2018-01 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2018-01' && $(ruby) +namespace: "Azure::Compute::Mgmt::V2018_01_01" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_databox/lib +``` diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/datafactory.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/datafactory.json index 13c5e57b598a..74dfdd5a010a 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/datafactory.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/datafactory.json @@ -1055,7 +1055,7 @@ "$ref": "./examples/IntegrationRuntimes_Upgrade.json" } }, - "description": "Upgrade self-hosted integration runtime to latest version if availably.", + "description": "Upgrade self-hosted integration runtime to latest version if availability.", "parameters": [ { "$ref": "#/parameters/subscriptionId" diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Dataset.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Dataset.json index 466c05c5a2fc..c7e447b9fc25 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Dataset.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Dataset.json @@ -1106,7 +1106,7 @@ }, "ConcurObjectDataset" : { "x-ms-discriminator-value": "ConcurObject", - "description": "Concur Serivce dataset.", + "description": "Concur Service dataset.", "type": "object", "allOf": [ { @@ -1202,7 +1202,7 @@ }, "HubspotObjectDataset" : { "x-ms-discriminator-value": "HubspotObject", - "description": "Hubspot Serivce dataset.", + "description": "Hubspot Service dataset.", "type": "object", "allOf": [ { @@ -1226,7 +1226,7 @@ }, "JiraObjectDataset" : { "x-ms-discriminator-value": "JiraObject", - "description": "Jira Serivce dataset.", + "description": "Jira Service dataset.", "type": "object", "allOf": [ { @@ -1274,7 +1274,7 @@ }, "PaypalObjectDataset" : { "x-ms-discriminator-value": "PaypalObject", - "description": "Paypal Serivce dataset.", + "description": "Paypal Service dataset.", "type": "object", "allOf": [ { @@ -1334,7 +1334,7 @@ }, "ShopifyObjectDataset" : { "x-ms-discriminator-value": "ShopifyObject", - "description": "Shopify Serivce dataset.", + "description": "Shopify Service dataset.", "type": "object", "allOf": [ { @@ -1358,7 +1358,7 @@ }, "SquareObjectDataset" : { "x-ms-discriminator-value": "SquareObject", - "description": "Square Serivce dataset.", + "description": "Square Service dataset.", "type": "object", "allOf": [ { @@ -1370,7 +1370,7 @@ }, "XeroObjectDataset" : { "x-ms-discriminator-value": "XeroObject", - "description": "Xero Serivce dataset.", + "description": "Xero Service dataset.", "type": "object", "allOf": [ { diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/LinkedService.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/LinkedService.json index 6091ed7fddc6..6d251d9049a6 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/LinkedService.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/LinkedService.json @@ -1989,7 +1989,7 @@ "type": "object" }, "marketplaceID": { - "description": "The Amazon Marketplace ID you want to retrieve data from. To retrive data from multiple Marketplace IDs, seperate them with a comma (,). (i.e. A2EUQ1WTGCTBG2)", + "description": "The Amazon Marketplace ID you want to retrieve data from. To retrieve data from multiple Marketplace IDs, separate them with a comma (,). (i.e. A2EUQ1WTGCTBG2)", "type": "object" }, "sellerID": { @@ -2067,7 +2067,7 @@ }, "ConcurLinkedService": { "x-ms-discriminator-value": "Concur", - "description": "Concur Serivce linked service.", + "description": "Concur Service linked service.", "type": "object", "allOf": [ { @@ -2076,7 +2076,7 @@ ], "properties": { "typeProperties": { - "description": "Concur Serivce linked service properties.", + "description": "Concur Service linked service properties.", "x-ms-client-flatten": true, "$ref": "#/definitions/ConcurLinkedServiceTypeProperties" } @@ -2086,7 +2086,7 @@ ] }, "ConcurLinkedServiceTypeProperties": { - "description": "Concur Serivce linked service properties.", + "description": "Concur Service linked service properties.", "properties": { "clientId": { "description": "Application client_id supplied by Concur App Management.", @@ -2571,7 +2571,7 @@ }, "HubspotLinkedService": { "x-ms-discriminator-value": "Hubspot", - "description": "Hubspot Serivce linked service.", + "description": "Hubspot Service linked service.", "type": "object", "allOf": [ { @@ -2580,7 +2580,7 @@ ], "properties": { "typeProperties": { - "description": "Hubspot Serivce linked service properties.", + "description": "Hubspot Service linked service properties.", "x-ms-client-flatten": true, "$ref": "#/definitions/HubspotLinkedServiceTypeProperties" } @@ -2590,7 +2590,7 @@ ] }, "HubspotLinkedServiceTypeProperties": { - "description": "Hubspot Serivce linked service properties.", + "description": "Hubspot Service linked service properties.", "properties": { "clientId": { "description": "The client ID associated with your Hubspot application.", @@ -2713,7 +2713,7 @@ }, "JiraLinkedService": { "x-ms-discriminator-value": "Jira", - "description": "Jira Serivce linked service.", + "description": "Jira Service linked service.", "type": "object", "allOf": [ { @@ -2722,7 +2722,7 @@ ], "properties": { "typeProperties": { - "description": "Jira Serivce linked service properties.", + "description": "Jira Service linked service properties.", "x-ms-client-flatten": true, "$ref": "#/definitions/JiraLinkedServiceTypeProperties" } @@ -2732,7 +2732,7 @@ ] }, "JiraLinkedServiceTypeProperties": { - "description": "Jira Serivce linked service properties.", + "description": "Jira Service linked service properties.", "properties": { "host": { "description": "The IP address or host name of the Jira service. (e.g. jira.example.com)", @@ -2916,7 +2916,7 @@ }, "PaypalLinkedService": { "x-ms-discriminator-value": "Paypal", - "description": "Paypal Serivce linked service.", + "description": "Paypal Service linked service.", "type": "object", "allOf": [ { @@ -2925,7 +2925,7 @@ ], "properties": { "typeProperties": { - "description": "Paypal Serivce linked service properties.", + "description": "Paypal Service linked service properties.", "x-ms-client-flatten": true, "$ref": "#/definitions/PaypalLinkedServiceTypeProperties" } @@ -2935,7 +2935,7 @@ ] }, "PaypalLinkedServiceTypeProperties": { - "description": "Paypal Serivce linked service properties.", + "description": "Paypal Service linked service properties.", "properties": { "host": { "description": "The URL of the PayPal instance. (i.e. api.sandbox.paypal.com)", @@ -3296,7 +3296,7 @@ }, "ShopifyLinkedService": { "x-ms-discriminator-value": "Shopify", - "description": "Shopify Serivce linked service.", + "description": "Shopify Service linked service.", "type": "object", "allOf": [ { @@ -3305,7 +3305,7 @@ ], "properties": { "typeProperties": { - "description": "Shopify Serivce linked service properties.", + "description": "Shopify Service linked service properties.", "x-ms-client-flatten": true, "$ref": "#/definitions/ShopifyLinkedServiceTypeProperties" } @@ -3315,7 +3315,7 @@ ] }, "ShopifyLinkedServiceTypeProperties": { - "description": "Shopify Serivce linked service properties.", + "description": "Shopify Service linked service properties.", "properties": { "host": { "description": "The endpoint of the Shopify server. (i.e. mystore.myshopify.com)", @@ -3462,7 +3462,7 @@ }, "SquareLinkedService": { "x-ms-discriminator-value": "Square", - "description": "Square Serivce linked service.", + "description": "Square Service linked service.", "type": "object", "allOf": [ { @@ -3471,7 +3471,7 @@ ], "properties": { "typeProperties": { - "description": "Square Serivce linked service properties.", + "description": "Square Service linked service properties.", "x-ms-client-flatten": true, "$ref": "#/definitions/SquareLinkedServiceTypeProperties" } @@ -3481,7 +3481,7 @@ ] }, "SquareLinkedServiceTypeProperties": { - "description": "Square Serivce linked service properties.", + "description": "Square Service linked service properties.", "properties": { "host": { "description": "The URL of the Square instance. (i.e. mystore.mysquare.com)", @@ -3524,7 +3524,7 @@ }, "XeroLinkedService": { "x-ms-discriminator-value": "Xero", - "description": "Xero Serivce linked service.", + "description": "Xero Service linked service.", "type": "object", "allOf": [ { @@ -3533,7 +3533,7 @@ ], "properties": { "typeProperties": { - "description": "Xero Serivce linked service properties.", + "description": "Xero Service linked service properties.", "x-ms-client-flatten": true, "$ref": "#/definitions/XeroLinkedServiceTypeProperties" } @@ -3543,7 +3543,7 @@ ] }, "XeroLinkedServiceTypeProperties": { - "description": "Xero Serivce linked service properties.", + "description": "Xero Service linked service properties.", "properties": { "host": { "description": "The endpoint of the Xero server. (i.e. api.xero.com)", diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Pipeline.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Pipeline.json index 06cda743b02b..05876249e8ef 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Pipeline.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Pipeline.json @@ -207,7 +207,7 @@ "$ref": "#/definitions/CopySink" }, "translator": { - "description": "Copy activity translator. If not specificed, tabular translator is used.", + "description": "Copy activity translator. If not specified, tabular translator is used.", "$ref": "#/definitions/CopyTranslator" }, "enableStaging": { @@ -673,7 +673,7 @@ } }, "ConcurSource": { - "description": "A copy activity Concur Serivce source.", + "description": "A copy activity Concur Service source.", "type": "object", "allOf": [ { @@ -793,7 +793,7 @@ } }, "HubspotSource": { - "description": "A copy activity Hubspot Serivce source.", + "description": "A copy activity Hubspot Service source.", "type": "object", "allOf": [ { @@ -823,7 +823,7 @@ } }, "JiraSource": { - "description": "A copy activity Jira Serivce source.", + "description": "A copy activity Jira Service source.", "type": "object", "allOf": [ { @@ -883,7 +883,7 @@ } }, "PaypalSource": { - "description": "A copy activity Paypal Serivce source.", + "description": "A copy activity Paypal Service source.", "type": "object", "allOf": [ { @@ -958,7 +958,7 @@ } }, "ShopifySource": { - "description": "A copy activity Shopify Serivce source.", + "description": "A copy activity Shopify Service source.", "type": "object", "allOf": [ { @@ -988,7 +988,7 @@ } }, "SquareSource": { - "description": "A copy activity Square Serivce source.", + "description": "A copy activity Square Service source.", "type": "object", "allOf": [ { @@ -1003,7 +1003,7 @@ } }, "XeroSource": { - "description": "A copy activity Xero Serivce source.", + "description": "A copy activity Xero Service source.", "type": "object", "allOf": [ { diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Trigger.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Trigger.json index 921b0da9c4da..0acf3d129ef0 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Trigger.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/preview/2017-09-01-preview/entityTypes/Trigger.json @@ -219,7 +219,7 @@ "additionalProperties": { "type": "object" }, - "description": "The recurrence schedule occurence." + "description": "The recurrence schedule occurrence." }, "DayOfWeek": { "type": "string", @@ -239,7 +239,7 @@ "description": "The days of the week." }, "BlobTrigger": { - "description": "Trigger that runs everytime the selected Blob container changes.", + "description": "Trigger that runs every time the selected Blob container changes.", "type": "object", "allOf": [ { @@ -277,7 +277,7 @@ }, "BlobEventsTrigger": { - "description": "Trigger that runs everytime a Blob event occurs.", + "description": "Trigger that runs every time a Blob event occurs.", "type": "object", "allOf": [ { 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 ba0711ebb626..649a6e4a54d1 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 @@ -446,6 +446,57 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}/getDataPlaneAccess": { + "post": { + "tags": [ + "factories" + ], + "operationId": "Factories_GetDataPlaneAccess", + "x-ms-examples": { + "Factories_GetDataPlaneAccess": { + "$ref": "./examples/Factories_GetDataPlaneAccess.json" + } + }, + "description": "Get Data Plane access.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/factoryName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "policy", + "description": "Data Plane user access policy definition.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UserAccessPolicy" + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/AccessPolicyResponse" + } + }, + "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}/integrationRuntimes": { "get": { "tags": [ @@ -1082,7 +1133,7 @@ "$ref": "./examples/IntegrationRuntimes_Upgrade.json" } }, - "description": "Upgrade self-hosted integration runtime to latest version if availably.", + "description": "Upgrade self-hosted integration runtime to latest version if availability.", "parameters": [ { "$ref": "#/parameters/subscriptionId" @@ -2060,7 +2111,7 @@ }, { "name": "referencePipelineRunId", - "description": "The pipeline run identifier. If run ID is specified the parameters of the the specified run will be used to create a new run.", + "description": "The pipeline run identifier. If run ID is specified the parameters of the specified run will be used to create a new run.", "in": "query", "required": false, "type": "string", @@ -3435,7 +3486,7 @@ "type": "string" }, "repositoryName": { - "description": "Rrepository name.", + "description": "Repository name.", "type": "string" }, "collaborationBranch": { @@ -3541,6 +3592,48 @@ } } }, + "UserAccessPolicy": { + "description": "Get Data Plane read only token request definition.", + "properties": { + "permissions" : { + "description": "The string with permissions for Data Plane access. Currently only 'r' is supported which grants read only access.", + "type": "string" + }, + "accessResourcePath" : { + "description": "The resource path to get access relative to factory. Currently only empty string is supported which corresponds to the factory resource.", + "type": "string" + }, + "profileName" : { + "description": "The name of the profile. Currently only the default is supported. The default value is DefaultProfile.", + "type": "string" + }, + "startTime": { + "description": "Start time for the token. If not specified the current time will be used.", + "type": "string" + }, + "expireTime": { + "description": "Expiration time for the token. Maximum duration for the token is eight hours and by default the token will expire in eight hours.", + "type": "string" + } + } + }, + "AccessPolicyResponse": { + "description": "Get Data Plane read only token response definition.", + "properties": { + "policy" : { + "description": "The user access policy.", + "$ref": "#/definitions/UserAccessPolicy" + }, + "accessToken": { + "description": "Data Plane read only access token.", + "type": "string" + }, + "dataPlaneUrl": { + "description": "Data Plane service base URL.", + "type": "string" + } + } + }, "FactoryProperties": { "description": "Factory resource properties.", "properties": { diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json index e2ab56cec7a8..d0108dc083a4 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Dataset.json @@ -941,7 +941,7 @@ "path" ] }, - "SqlServerTableDataset": { + "SqlServerTableDataset": { "x-ms-discriminator-value": "SqlServerTable", "description": "The on-premises SQL Server dataset.", "type": "object", @@ -1090,6 +1090,15 @@ } } }, + "GenericDatasetTypeProperties": { + "description": "Properties specific to this dataset type.", + "properties": { + "tableName": { + "type": "object", + "description": "The table name. Type: string (or Expression with resultType string)." + } + } + }, "AmazonMWSObjectDataset" : { "x-ms-discriminator-value": "AmazonMWSObject", "description": "Amazon Marketplace Web Service dataset.", @@ -1099,7 +1108,12 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "AzurePostgreSqlTableDataset" : { @@ -1111,19 +1125,29 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "ConcurObjectDataset" : { "x-ms-discriminator-value": "ConcurObject", - "description": "Concur Serivce dataset.", + "description": "Concur Service dataset.", "type": "object", "allOf": [ { "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "CouchbaseTableDataset" : { @@ -1135,7 +1159,12 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "DrillTableDataset" : { @@ -1147,7 +1176,12 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "EloquaObjectDataset" : { @@ -1159,7 +1193,12 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "GoogleBigQueryObjectDataset" : { @@ -1171,7 +1210,12 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "GreenplumTableDataset" : { @@ -1183,7 +1227,12 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "HBaseObjectDataset" : { @@ -1195,7 +1244,12 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "HiveObjectDataset" : { @@ -1207,19 +1261,29 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "HubspotObjectDataset" : { "x-ms-discriminator-value": "HubspotObject", - "description": "Hubspot Serivce dataset.", + "description": "Hubspot Service dataset.", "type": "object", "allOf": [ { "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "ImpalaObjectDataset" : { @@ -1231,19 +1295,29 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "JiraObjectDataset" : { "x-ms-discriminator-value": "JiraObject", - "description": "Jira Serivce dataset.", + "description": "Jira Service dataset.", "type": "object", "allOf": [ { "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "MagentoObjectDataset" : { @@ -1255,7 +1329,12 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "MariaDBTableDataset" : { @@ -1267,7 +1346,12 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "MarketoObjectDataset" : { @@ -1279,19 +1363,29 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "PaypalObjectDataset" : { "x-ms-discriminator-value": "PaypalObject", - "description": "Paypal Serivce dataset.", + "description": "Paypal Service dataset.", "type": "object", "allOf": [ { "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "PhoenixObjectDataset" : { @@ -1303,7 +1397,12 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "PrestoObjectDataset" : { @@ -1315,7 +1414,12 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "QuickBooksObjectDataset" : { @@ -1327,7 +1431,12 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "ServiceNowObjectDataset" : { @@ -1339,19 +1448,29 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "ShopifyObjectDataset" : { "x-ms-discriminator-value": "ShopifyObject", - "description": "Shopify Serivce dataset.", + "description": "Shopify Service dataset.", "type": "object", "allOf": [ { "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "SparkObjectDataset" : { @@ -1363,31 +1482,46 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "SquareObjectDataset" : { "x-ms-discriminator-value": "SquareObject", - "description": "Square Serivce dataset.", + "description": "Square Service dataset.", "type": "object", "allOf": [ { "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "XeroObjectDataset" : { "x-ms-discriminator-value": "XeroObject", - "description": "Xero Serivce dataset.", + "description": "Xero Service dataset.", "type": "object", "allOf": [ { "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "ZohoObjectDataset" : { @@ -1399,7 +1533,12 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "NetezzaTableDataset" : { @@ -1411,7 +1550,12 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "VerticaTableDataset" : { @@ -1423,7 +1567,12 @@ "$ref": "#/definitions/Dataset" } ], - "properties": { + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "SalesforceMarketingCloudObjectDataset": { @@ -1436,6 +1585,11 @@ } ], "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } }, "ResponsysObjectDataset": { @@ -1448,6 +1602,11 @@ } ], "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } } } } 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 b893ab4f12a0..d9995df91fee 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 @@ -109,9 +109,17 @@ "description": "The connection string. It is mutually exclusive with sasUri property. Type: string, SecureString or AzureKeyVaultSecretReference.", "type": "object" }, + "accountKey": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of accountKey in connection string." + }, "sasUri": { - "description": "SAS URI of the Azure Storage resource. It is mutually exclusive with connectionString property.", - "$ref": "../datafactory.json#/definitions/SecretBase" + "description": "SAS URI of the Azure Storage resource. It is mutually exclusive with connectionString property. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "sasToken": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of sasToken in sas uri." }, "encryptedCredential": { "type": "string", @@ -126,9 +134,17 @@ "type": "object", "description": "The connection string. It is mutually exclusive with sasUri, serviceEndpoint property. Type: string, SecureString or AzureKeyVaultSecretReference." }, + "accountKey": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of accountKey in connection string." + }, "sasUri": { - "description": "SAS URI of the Azure Blob Storage resource. It is mutually exclusive with connectionString, serviceEndpoint property.", - "$ref": "../datafactory.json#/definitions/SecretBase" + "description": "SAS URI of the Azure Blob Storage resource. It is mutually exclusive with connectionString, serviceEndpoint property. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "sasToken": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of sasToken in sas uri." }, "serviceEndpoint": { "type": "string", @@ -179,6 +195,10 @@ "description": "The connection string. Type: string, SecureString or AzureKeyVaultSecretReference. Type: string, SecureString or AzureKeyVaultSecretReference.", "type": "object" }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, "servicePrincipalId": { "type": "object", "description": "The ID of the service principal used to authenticate against Azure SQL Data Warehouse. Type: string (or Expression with resultType string)." @@ -271,6 +291,10 @@ "description": "The connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", "type": "object" }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, "servicePrincipalId": { "type": "object", "description": "The ID of the service principal used to authenticate against Azure SQL Database. Type: string (or Expression with resultType string)." @@ -406,6 +430,10 @@ "description": "The connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", "type": "object" }, + "accountKey": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of accountKey in connection string." + }, "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)." @@ -620,6 +648,10 @@ "description": "The connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", "type": "object" }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, "encryptedCredential": { "type": "object", "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." @@ -656,6 +688,10 @@ "description": "The connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", "type": "object" }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, "encryptedCredential": { "type": "object", "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." @@ -692,6 +728,10 @@ "description": "The connection string.", "$ref": "../datafactory.json#/definitions/SecretBase" }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, "encryptedCredential": { "type": "object", "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." @@ -728,6 +768,10 @@ "description": "The connection string.", "$ref": "../datafactory.json#/definitions/SecretBase" }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, "encryptedCredential": { "type": "object", "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." @@ -2062,7 +2106,7 @@ "type": "object" }, "marketplaceID": { - "description": "The Amazon Marketplace ID you want to retrieve data from. To retrive data from multiple Marketplace IDs, seperate them with a comma (,). (i.e. A2EUQ1WTGCTBG2)", + "description": "The Amazon Marketplace ID you want to retrieve data from. To retrieve data from multiple Marketplace IDs, separate them with a comma (,). (i.e. A2EUQ1WTGCTBG2)", "type": "object" }, "sellerID": { @@ -2132,6 +2176,10 @@ "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", "type": "object" }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, "encryptedCredential": { "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", "type": "object" @@ -2140,7 +2188,7 @@ }, "ConcurLinkedService": { "x-ms-discriminator-value": "Concur", - "description": "Concur Serivce linked service.", + "description": "Concur Service linked service.", "type": "object", "allOf": [ { @@ -2149,7 +2197,7 @@ ], "properties": { "typeProperties": { - "description": "Concur Serivce linked service properties.", + "description": "Concur Service linked service properties.", "x-ms-client-flatten": true, "$ref": "#/definitions/ConcurLinkedServiceTypeProperties" } @@ -2159,7 +2207,7 @@ ] }, "ConcurLinkedServiceTypeProperties": { - "description": "Concur Serivce linked service properties.", + "description": "Concur Service linked service properties.", "properties": { "clientId": { "description": "Application client_id supplied by Concur App Management.", @@ -2222,6 +2270,10 @@ "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", "type": "object" }, + "credString": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of credString in connection string." + }, "encryptedCredential": { "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", "type": "object" @@ -2255,6 +2307,10 @@ "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", "type": "object" }, + "pwd": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, "encryptedCredential": { "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", "type": "object" @@ -2430,6 +2486,10 @@ "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", "type": "object" }, + "pwd": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, "encryptedCredential": { "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", "type": "object" @@ -2644,7 +2704,7 @@ }, "HubspotLinkedService": { "x-ms-discriminator-value": "Hubspot", - "description": "Hubspot Serivce linked service.", + "description": "Hubspot Service linked service.", "type": "object", "allOf": [ { @@ -2653,7 +2713,7 @@ ], "properties": { "typeProperties": { - "description": "Hubspot Serivce linked service properties.", + "description": "Hubspot Service linked service properties.", "x-ms-client-flatten": true, "$ref": "#/definitions/HubspotLinkedServiceTypeProperties" } @@ -2663,7 +2723,7 @@ ] }, "HubspotLinkedServiceTypeProperties": { - "description": "Hubspot Serivce linked service properties.", + "description": "Hubspot Service linked service properties.", "properties": { "clientId": { "description": "The client ID associated with your Hubspot application.", @@ -2786,7 +2846,7 @@ }, "JiraLinkedService": { "x-ms-discriminator-value": "Jira", - "description": "Jira Serivce linked service.", + "description": "Jira Service linked service.", "type": "object", "allOf": [ { @@ -2795,7 +2855,7 @@ ], "properties": { "typeProperties": { - "description": "Jira Serivce linked service properties.", + "description": "Jira Service linked service properties.", "x-ms-client-flatten": true, "$ref": "#/definitions/JiraLinkedServiceTypeProperties" } @@ -2805,7 +2865,7 @@ ] }, "JiraLinkedServiceTypeProperties": { - "description": "Jira Serivce linked service properties.", + "description": "Jira Service linked service properties.", "properties": { "host": { "description": "The IP address or host name of the Jira service. (e.g. jira.example.com)", @@ -2924,6 +2984,10 @@ "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", "type": "object" }, + "pwd": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, "encryptedCredential": { "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", "type": "object" @@ -2989,7 +3053,7 @@ }, "PaypalLinkedService": { "x-ms-discriminator-value": "Paypal", - "description": "Paypal Serivce linked service.", + "description": "Paypal Service linked service.", "type": "object", "allOf": [ { @@ -2998,7 +3062,7 @@ ], "properties": { "typeProperties": { - "description": "Paypal Serivce linked service properties.", + "description": "Paypal Service linked service properties.", "x-ms-client-flatten": true, "$ref": "#/definitions/PaypalLinkedServiceTypeProperties" } @@ -3008,7 +3072,7 @@ ] }, "PaypalLinkedServiceTypeProperties": { - "description": "Paypal Serivce linked service properties.", + "description": "Paypal Service linked service properties.", "properties": { "host": { "description": "The URL of the PayPal instance. (i.e. api.sandbox.paypal.com)", @@ -3369,7 +3433,7 @@ }, "ShopifyLinkedService": { "x-ms-discriminator-value": "Shopify", - "description": "Shopify Serivce linked service.", + "description": "Shopify Service linked service.", "type": "object", "allOf": [ { @@ -3378,7 +3442,7 @@ ], "properties": { "typeProperties": { - "description": "Shopify Serivce linked service properties.", + "description": "Shopify Service linked service properties.", "x-ms-client-flatten": true, "$ref": "#/definitions/ShopifyLinkedServiceTypeProperties" } @@ -3388,7 +3452,7 @@ ] }, "ShopifyLinkedServiceTypeProperties": { - "description": "Shopify Serivce linked service properties.", + "description": "Shopify Service linked service properties.", "properties": { "host": { "description": "The endpoint of the Shopify server. (i.e. mystore.myshopify.com)", @@ -3535,7 +3599,7 @@ }, "SquareLinkedService": { "x-ms-discriminator-value": "Square", - "description": "Square Serivce linked service.", + "description": "Square Service linked service.", "type": "object", "allOf": [ { @@ -3544,7 +3608,7 @@ ], "properties": { "typeProperties": { - "description": "Square Serivce linked service properties.", + "description": "Square Service linked service properties.", "x-ms-client-flatten": true, "$ref": "#/definitions/SquareLinkedServiceTypeProperties" } @@ -3554,7 +3618,7 @@ ] }, "SquareLinkedServiceTypeProperties": { - "description": "Square Serivce linked service properties.", + "description": "Square Service linked service properties.", "properties": { "host": { "description": "The URL of the Square instance. (i.e. mystore.mysquare.com)", @@ -3597,7 +3661,7 @@ }, "XeroLinkedService": { "x-ms-discriminator-value": "Xero", - "description": "Xero Serivce linked service.", + "description": "Xero Service linked service.", "type": "object", "allOf": [ { @@ -3606,7 +3670,7 @@ ], "properties": { "typeProperties": { - "description": "Xero Serivce linked service properties.", + "description": "Xero Service linked service properties.", "x-ms-client-flatten": true, "$ref": "#/definitions/XeroLinkedServiceTypeProperties" } @@ -3616,7 +3680,7 @@ ] }, "XeroLinkedServiceTypeProperties": { - "description": "Xero Serivce linked service properties.", + "description": "Xero Service linked service properties.", "properties": { "host": { "description": "The endpoint of the Xero server. (i.e. api.xero.com)", @@ -3730,6 +3794,10 @@ "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", "type": "object" }, + "pwd": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, "encryptedCredential": { "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", "type": "object" @@ -3763,6 +3831,10 @@ "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", "type": "object" }, + "pwd": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, "encryptedCredential": { "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", "type": "object" 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 24fdecaf29ea..14d232b10bfb 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 @@ -98,11 +98,11 @@ "type": "object", "properties": { "name": { - "description": "User proprety name.", + "description": "User property name.", "type": "string" }, "value": { - "description": "User proprety value. Type: string (or Expression with resultType string).", + "description": "User property value. Type: string (or Expression with resultType string).", "type": "object" } }, @@ -250,7 +250,7 @@ "$ref": "#/definitions/CopySink" }, "translator": { - "description": "Copy activity translator. If not specificed, tabular translator is used.", + "description": "Copy activity translator. If not specified, tabular translator is used.", "$ref": "#/definitions/CopyTranslator" }, "enableStaging": { @@ -716,7 +716,7 @@ } }, "ConcurSource": { - "description": "A copy activity Concur Serivce source.", + "description": "A copy activity Concur Service source.", "type": "object", "allOf": [ { @@ -836,7 +836,7 @@ } }, "HubspotSource": { - "description": "A copy activity Hubspot Serivce source.", + "description": "A copy activity Hubspot Service source.", "type": "object", "allOf": [ { @@ -866,7 +866,7 @@ } }, "JiraSource": { - "description": "A copy activity Jira Serivce source.", + "description": "A copy activity Jira Service source.", "type": "object", "allOf": [ { @@ -926,7 +926,7 @@ } }, "PaypalSource": { - "description": "A copy activity Paypal Serivce source.", + "description": "A copy activity Paypal Service source.", "type": "object", "allOf": [ { @@ -1001,7 +1001,7 @@ } }, "ShopifySource": { - "description": "A copy activity Shopify Serivce source.", + "description": "A copy activity Shopify Service source.", "type": "object", "allOf": [ { @@ -1031,7 +1031,7 @@ } }, "SquareSource": { - "description": "A copy activity Square Serivce source.", + "description": "A copy activity Square Service source.", "type": "object", "allOf": [ { @@ -1046,7 +1046,7 @@ } }, "XeroSource": { - "description": "A copy activity Xero Serivce source.", + "description": "A copy activity Xero Service source.", "type": "object", "allOf": [ { @@ -1184,10 +1184,7 @@ "description": "Stored procedure parameter type.", "$ref": "#/definitions/StoredProcedureParameterType" } - }, - "required": [ - "value" - ] + } }, "StoredProcedureParameterType": { "description": "Stored procedure parameter type.", @@ -2327,6 +2324,41 @@ "pipeline" ] }, + "DeleteActivity": { + "x-ms-discriminator-value": "Delete", + "description": "Delete activity.", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Delete activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DeleteActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DeleteActivityTypeProperties": { + "description": "Delete activity properties.", + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be deleted recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "dataset": { + "description": "Delete activity dataset reference.", + "$ref": "../datafactory.json#/definitions/DatasetReference" + } + }, + "required": [ + "dataset" + ] + }, "LookupActivity": { "x-ms-discriminator-value": "Lookup", "description": "Lookup activity.", diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Trigger.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Trigger.json index efd7a39d3cb5..7b9b775d38da 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Trigger.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/Trigger.json @@ -219,7 +219,7 @@ "additionalProperties": { "type": "object" }, - "description": "The recurrence schedule occurence." + "description": "The recurrence schedule occurrence." }, "DayOfWeek": { "type": "string", @@ -239,7 +239,7 @@ "description": "The days of the week." }, "BlobTrigger": { - "description": "Trigger that runs everytime the selected Blob container changes.", + "description": "Trigger that runs every time the selected Blob container changes.", "type": "object", "allOf": [ { @@ -277,7 +277,7 @@ }, "BlobEventsTrigger": { - "description": "Trigger that runs everytime a Blob event occurs.", + "description": "Trigger that runs every time a Blob event occurs.", "type": "object", "allOf": [ { diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/Factories_GetDataPlaneAccess.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/Factories_GetDataPlaneAccess.json new file mode 100644 index 000000000000..4f1da8e9e906 --- /dev/null +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/Factories_GetDataPlaneAccess.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "factoryName": "exampleFactoryName", + "policy": { + "permissions": "r", + "accessResourcePath": "", + "profileName": "DefaultProfile", + "startTime": "2018-11-10T02:46:20.2659347Z", + "expireTime": "2018-11-10T09:46:20.2659347Z" + }, + "api-version": "2018-06-01" + }, + "responses": { + "200": { + "headers": { + "Date": "Wed, 07 Nov 2018 03:41:57 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "11996", + "x-ms-request-id": "82bc20d2-4bec-496d-a1c8-3f7746fed307", + "x-ms-correlation-request-id": "82bc20d2-4bec-496d-a1c8-3f7746fed307" + }, + "body": { + "policy": { + "permissions": "r", + "accessResourcePath": "", + "profileName": "DefaultProfile", + "startTime": "2018-11-10T02:46:20.2659347Z", + "expireTime": "2018-11-10T09:46:20.2659347Z" + }, + "dataPlaneUrl": "https://rpeastus.svc.datafactory.azure.com:4433", + "accessToken": "**********" + } + } + } +} \ No newline at end of file diff --git a/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_Create.json b/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_Create.json index e6ea0edac6d3..c37a85108dbc 100644 --- a/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_Create.json +++ b/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_Create.json @@ -5,12 +5,12 @@ "resourceGroupName": "contosorg", "accountName": "contosoadla", "parameters": { - "location": "test_location", + "location": "eastus2", "tags": { "test_key": "test_value" }, "properties": { - "defaultDataLakeStoreAccount": "test_account", + "defaultDataLakeStoreAccount": "test_adls", "dataLakeStoreAccounts": [{ "name": "test_adls", "properties": { @@ -57,7 +57,7 @@ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rgaba12041/providers/Microsoft.DataLakeAnalytics/accounts/testaba15818", "name": "test_account", "type": "Microsoft.DataLakeAnalytics/accounts", - "location": "test_location", + "location": "eastus2", "tags": { "test_key": "test_value" }, @@ -68,7 +68,7 @@ "creationTime": "2017-04-14T13:21:56.6819037-07:00", "lastModifiedTime": "2017-04-14T13:21:56.6819037-07:00", "endpoint": "test_endpoint", - "defaultDataLakeStoreAccount": "test_account", + "defaultDataLakeStoreAccount": "test_adls", "dataLakeStoreAccounts": [{ "id": "test_adls_id", "name": "test_adls", @@ -124,7 +124,7 @@ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rgaba12041/providers/Microsoft.DataLakeAnalytics/accounts/testaba15818", "name": "test_account", "type": "Microsoft.DataLakeAnalytics/accounts", - "location": "test_location", + "location": "eastus2", "tags": { "test_key": "test_value" }, @@ -135,7 +135,7 @@ "creationTime": "2017-04-14T13:21:56.6819037-07:00", "lastModifiedTime": "2017-04-14T13:21:56.6819037-07:00", "endpoint": "test_endpoint", - "defaultDataLakeStoreAccount": "test_account", + "defaultDataLakeStoreAccount": "test_adls", "dataLakeStoreAccounts": [{ "id": "test_adls_id", "name": "test_adls", diff --git a/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_Get.json b/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_Get.json index bc959281964c..a23b56e134bb 100644 --- a/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_Get.json +++ b/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_Get.json @@ -11,7 +11,7 @@ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rgaba12041/providers/Microsoft.DataLakeAnalytics/accounts/testaba15818", "name": "test_account", "type": "Microsoft.DataLakeAnalytics/accounts", - "location": "test_location", + "location": "eastus2", "tags": { "test_key": "test_value" }, @@ -22,7 +22,7 @@ "creationTime": "2017-04-14T13:21:56.6819037-07:00", "lastModifiedTime": "2017-04-14T13:21:56.6819037-07:00", "endpoint": "test_endpoint", - "defaultDataLakeStoreAccount": "test_account", + "defaultDataLakeStoreAccount": "test_adls", "dataLakeStoreAccounts": [{ "id": "test_adls_id", "name": "test_adls", diff --git a/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_List.json b/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_List.json index b0129e40bea8..35783421c127 100644 --- a/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_List.json +++ b/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_List.json @@ -16,7 +16,7 @@ "id": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", "name": "test_account", "type": "test_type", - "location": "test_location", + "location": "eastus2", "tags": { "test_key": "test_value" }, diff --git a/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_ListByResourceGroup.json b/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_ListByResourceGroup.json index 0f1e4a6926ad..ed943f7e8615 100644 --- a/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_ListByResourceGroup.json +++ b/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_ListByResourceGroup.json @@ -17,7 +17,7 @@ "id": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", "name": "test_account", "type": "test_type", - "location": "test_location", + "location": "eastus2", "tags": { "test_key": "test_value" }, diff --git a/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_Update.json b/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_Update.json index 5a617f9ec664..8c4cb32d43a6 100644 --- a/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_Update.json +++ b/specification/datalake-analytics/resource-manager/Microsoft.DataLakeAnalytics/stable/2016-11-01/examples/Accounts_Update.json @@ -42,7 +42,7 @@ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rgaba12041/providers/Microsoft.DataLakeAnalytics/accounts/testaba15818", "name": "test_account", "type": "Microsoft.DataLakeAnalytics/accounts", - "location": "test_location", + "location": "eastus2", "tags": { "test_key": "test_value" }, @@ -53,7 +53,7 @@ "creationTime": "2017-04-14T13:21:56.6819037-07:00", "lastModifiedTime": "2017-04-14T13:21:56.6819037-07:00", "endpoint": "test_endpoint", - "defaultDataLakeStoreAccount": "test_account", + "defaultDataLakeStoreAccount": "test_adls", "dataLakeStoreAccounts": [{ "id": "test_adls_id", "name": "test_adls", @@ -109,7 +109,7 @@ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rgaba12041/providers/Microsoft.DataLakeAnalytics/accounts/testaba15818", "name": "test_account", "type": "Microsoft.DataLakeAnalytics/accounts", - "location": "test_location", + "location": "eastus2", "tags": { "test_key": "test_value" }, @@ -120,7 +120,7 @@ "creationTime": "2017-04-14T13:21:56.6819037-07:00", "lastModifiedTime": "2017-04-14T13:21:56.6819037-07:00", "endpoint": "test_endpoint", - "defaultDataLakeStoreAccount": "test_account", + "defaultDataLakeStoreAccount": "test_adls", "dataLakeStoreAccounts": [{ "id": "test_adls_id", "name": "test_adls", @@ -176,7 +176,7 @@ "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rgaba12041/providers/Microsoft.DataLakeAnalytics/accounts/testaba15818", "name": "test_account", "type": "Microsoft.DataLakeAnalytics/accounts", - "location": "test_location", + "location": "eastus2", "tags": { "test_key": "test_value" }, @@ -187,7 +187,7 @@ "creationTime": "2017-04-14T13:21:56.6819037-07:00", "lastModifiedTime": "2017-04-14T13:21:56.6819037-07:00", "endpoint": "test_endpoint", - "defaultDataLakeStoreAccount": "test_account", + "defaultDataLakeStoreAccount": "test_adls", "dataLakeStoreAccounts": [{ "id": "test_adls_id", "name": "test_adls", diff --git a/specification/datalake-store/data-plane/Microsoft.DataLakeStore/preview/2015-10-01-preview/filesystem.json b/specification/datalake-store/data-plane/Microsoft.DataLakeStore/preview/2015-10-01-preview/filesystem.json index 80b5afd54ea0..6b63469b2d24 100644 --- a/specification/datalake-store/data-plane/Microsoft.DataLakeStore/preview/2015-10-01-preview/filesystem.json +++ b/specification/datalake-store/data-plane/Microsoft.DataLakeStore/preview/2015-10-01-preview/filesystem.json @@ -64,7 +64,7 @@ "format": "file" }, "required": true, - "description": "The file contents to include when appending to the file." + "description": "The file contents to include when appending to the file. The maximum content size is 4MB. For content larger than 4MB you must append the content in 4MB chunks." }, { "name": "appendMode", @@ -277,14 +277,16 @@ } } } - }, - "/webhdfs/v1/{destinationPath}": { + } + }, + "x-ms-paths": { + "/webhdfs/v1/{destinationPath}?op=CONCAT": { "post": { "tags": [ "FileSystem" ], "operationId": "FileSystem_Concat", - "description": "Concatenates the list of source files into the destination file, removing all source files upon success.", + "description": "Concatenates the list of source files into the destination file, removing all source files upon success. This operation has been deprecated, please use operation FileSystem_MsConcat instead.", "parameters": [ { "name": "destinationPath", @@ -302,7 +304,7 @@ "type": "string" }, "collectionFormat": "csv", - "description": "A list of comma seperated Data Lake Store paths (starting with '/') of the files to concatenate, in the order in which they should be concatenated." + "description": "A list of comma separated Data Lake Store paths (starting with '/') of the files to concatenate, in the order in which they should be concatenated." }, { "name": "op", @@ -329,10 +331,11 @@ "$ref": "#/definitions/AdlsError" } } - } + }, + "deprecated": true } }, - "/webhdfs/v1/{msConcatDestinationPath}": { + "/webhdfs/v1/{msConcatDestinationPath}?op=MSCONCAT": { "post": { "tags": [ "FileSystem" @@ -395,7 +398,7 @@ } } }, - "/webhdfs/v1/{listFilePath}": { + "/webhdfs/v1/{listFilePath}?op=MSLISTSTATUS": { "get": { "tags": [ "FileSystem" @@ -423,14 +426,14 @@ "in": "query", "required": false, "type": "string", - "description": "Gets or sets the item or lexographical index after which to begin returning results. For example, a file list of 'a','b','d' and listAfter='b' will return 'd', and a listAfter='c' will also return 'd'. Optional." + "description": "Gets or sets the item or lexicographical index after which to begin returning results. For example, a file list of 'a','b','d' and listAfter='b' will return 'd', and a listAfter='c' will also return 'd'. Optional." }, { "name": "listBefore", "in": "query", "required": false, "type": "string", - "description": "Gets or sets the item or lexographical index before which to begin returning results. For example, a file list of 'a','b','d' and listBefore='d' will return 'a','b', and a listBefore='c' will also return 'a','b'. Optional." + "description": "Gets or sets the item or lexicographical index before which to begin returning results. For example, a file list of 'a','b','d' and listBefore='d' will return 'a','b', and a listBefore='c' will also return 'a','b'. Optional." }, { "name": "op", @@ -463,7 +466,7 @@ } } }, - "/webhdfs/va/{getContentSummaryFilePath}": { + "/webhdfs/va/{getContentSummaryFilePath}?op=GETCONTENTSUMMARY": { "get": { "tags": [ "FileSystem" @@ -509,7 +512,7 @@ } } }, - "/webhdfs/v1/{getFilePath}": { + "/webhdfs/v1/{getFilePath}?op=MSGETFILESTATUS": { "get": { "tags": [ "FileSystem" @@ -555,7 +558,7 @@ } } }, - "/webhdfs/v1/{flushFilePath}": { + "/webhdfs/v1/{flushFilePath}?op=APPEND;append=true;flush=true": { "post": { "tags": [ "FileSystem" @@ -621,7 +624,7 @@ } } }, - "/webhdfs/v1/{directFilePath}": { + "/webhdfs/v1/{directFilePath}?op=APPEND": { "post": { "tags": [ "FileSystem" @@ -647,7 +650,7 @@ "format": "file" }, "required": true, - "description": "The file contents to include when appending to the file." + "description": "The file contents to include when appending to the file. The maximum content size is 4MB. For content larger than 4MB you must append the content in 4MB chunks." }, { "name": "offset", @@ -719,7 +722,7 @@ "format": "file" }, "required": false, - "description": "The file contents to include when creating the file. This parameter is optional, resulting in an empty file if not specified." + "description": "The file contents to include when creating the file. This parameter is optional, resulting in an empty file if not specified. The maximum content size is 4MB. For content larger than 4MB you must append the content in 4MB chunks." }, { "name": "overwrite", @@ -834,7 +837,7 @@ } } }, - "/webhdfs/v1/{setAclFilePath}": { + "/webhdfs/v1/{setAclFilePath}?op=SETACL": { "put": { "tags": [ "FileSystem" @@ -884,7 +887,7 @@ } } }, - "/webhdfs/v1/{modifyAclFilePath}": { + "/webhdfs/v1/{modifyAclFilePath}?op=MODIFYACLENTRIES": { "put": { "tags": [ "FileSystem" @@ -934,7 +937,7 @@ } } }, - "/webhdfs/v1/{removeAclFilePath}": { + "/webhdfs/v1/{removeAclFilePath}?op=REMOVEACLENTRIES": { "put": { "tags": [ "FileSystem" @@ -984,7 +987,7 @@ } } }, - "/webhdfs/v1/{defaultAclFilePath}": { + "/webhdfs/v1/{defaultAclFilePath}?op=REMOVEDEFAULTACL": { "put": { "tags": [ "FileSystem" @@ -1027,7 +1030,7 @@ } } }, - "/webhdfs/v1/{aclFilePath}": { + "/webhdfs/v1/{aclFilePath}?op=REMOVEACL": { "put": { "tags": [ "FileSystem" @@ -1114,7 +1117,7 @@ } } }, - "/webhdfs/v1/{filePath}": { + "/webhdfs/v1/{filePath}?op=DELETE": { "delete": { "tags": [ "FileSystem" @@ -1167,7 +1170,7 @@ } } }, - "/webhdfs/v1/{renameFilePath}": { + "/webhdfs/v1/{renameFilePath}?op=RENAME": { "put": { "tags": [ "FileSystem" @@ -1220,7 +1223,7 @@ } } }, - "/webhdfs/v1/{setOwnerFilePath}": { + "/webhdfs/v1/{setOwnerFilePath}?op=SETOWNER": { "put": { "tags": [ "FileSystem" @@ -1277,7 +1280,7 @@ } } }, - "/webhdfs/v1/{setPermissionFilePath}": { + "/webhdfs/v1/{setPermissionFilePath}?op=SETPERMISSION": { "put": { "tags": [ "FileSystem" @@ -1397,7 +1400,7 @@ "type": "integer", "readOnly": true, "format": "int64", - "description": "the number of bytes used by the contet." + "description": "the number of bytes used by the content." }, "spaceConsumed": { "type": "integer", diff --git a/specification/datalake-store/data-plane/Microsoft.DataLakeStore/stable/2016-11-01/filesystem.json b/specification/datalake-store/data-plane/Microsoft.DataLakeStore/stable/2016-11-01/filesystem.json index b636e04e8ac5..c7e80ed48e82 100644 --- a/specification/datalake-store/data-plane/Microsoft.DataLakeStore/stable/2016-11-01/filesystem.json +++ b/specification/datalake-store/data-plane/Microsoft.DataLakeStore/stable/2016-11-01/filesystem.json @@ -130,7 +130,7 @@ "format": "file" }, "required": true, - "description": "The file contents to include when appending to the file." + "description": "The file contents to include when appending to the file. The maximum content size is 4MB. For content larger than 4MB you must append the content in 4MB chunks." }, { "name": "appendMode", @@ -743,7 +743,7 @@ "format": "file" }, "required": true, - "description": "The file contents to include when appending to the file." + "description": "The file contents to include when appending to the file. The maximum content size is 4MB. For content larger than 4MB you must append the content in 4MB chunks." }, { "name": "offset", @@ -854,7 +854,7 @@ "format": "file" }, "required": false, - "description": "The file contents to include when creating the file. This parameter is optional, resulting in an empty file if not specified." + "description": "The file contents to include when creating the file. This parameter is optional, resulting in an empty file if not specified. The maximum content size is 4MB. For content larger than 4MB you must append the content in 4MB chunks." }, { "name": "overwrite", diff --git a/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_Create.json b/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_Create.json index 3e47bad9601f..aa07bd7b7140 100644 --- a/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_Create.json +++ b/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_Create.json @@ -5,7 +5,7 @@ "resourceGroupName": "contosorg", "accountName": "contosoadla", "parameters": { - "location": "test_location", + "location": "eastus2", "tags": { "test_key": "test_value" }, @@ -49,7 +49,7 @@ "id": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", "name": "contosoadla", "type": "test_type", - "location": "test_location", + "location": "eastus2", "tags": { "test_key": "test_value" }, @@ -106,7 +106,7 @@ "id": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", "name": "contosoadla", "type": "test_type", - "location": "test_location", + "location": "eastus2", "tags": { "test_key": "test_value" }, diff --git a/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_Get.json b/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_Get.json index 1164abb7ffcb..175c009bfeb2 100644 --- a/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_Get.json +++ b/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_Get.json @@ -11,7 +11,7 @@ "id": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", "name": "contosoadla", "type": "test_type", - "location": "test_location", + "location": "eastus2", "tags": { "test_key": "test_value" }, diff --git a/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_List.json b/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_List.json index 40d0c767db01..ddb2b708e786 100644 --- a/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_List.json +++ b/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_List.json @@ -16,7 +16,7 @@ "id": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", "name": "contosoadla", "type": "test_type", - "location": "test_location", + "location": "eastus2", "tags": { "test_key": "test_value" }, diff --git a/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_ListByResourceGroup.json b/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_ListByResourceGroup.json index 36c407671507..58cb0aae853a 100644 --- a/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_ListByResourceGroup.json +++ b/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_ListByResourceGroup.json @@ -17,7 +17,7 @@ "id": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", "name": "contosoadla", "type": "test_type", - "location": "test_location", + "location": "eastus2", "tags": { "test_key": "test_value" }, diff --git a/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_Update.json b/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_Update.json index fa44341218d0..6500a29b52da 100644 --- a/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_Update.json +++ b/specification/datalake-store/resource-manager/Microsoft.DataLakeStore/stable/2016-11-01/examples/Accounts_Update.json @@ -28,7 +28,7 @@ "id": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", "name": "contosoadla", "type": "test_type", - "location": "test_location", + "location": "eastus2", "tags": { "test_key": "test_value" }, @@ -85,7 +85,7 @@ "id": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", "name": "contosoadla", "type": "test_type", - "location": "test_location", + "location": "eastus2", "tags": { "test_key": "test_value" }, @@ -142,7 +142,7 @@ "id": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", "name": "contosoadla", "type": "test_type", - "location": "test_location", + "location": "eastus2", "tags": { "test_key": "test_value" }, diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigratePostgreSqlAzureDbForPostgreSqlSyncTask.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigratePostgreSqlAzureDbForPostgreSqlSyncTask.json index 48ba15192fb0..510011b864ba 100644 --- a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigratePostgreSqlAzureDbForPostgreSqlSyncTask.json +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigratePostgreSqlAzureDbForPostgreSqlSyncTask.json @@ -2,7 +2,7 @@ "swagger": "2.0", "info": { "title": "Azure Database Migration Service Resource Provider", - "version": "2017-11-15-preview" + "version": "2018-07-15-preview" }, "securityDefinitions": { "azure_auth": { diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Tasks.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Tasks.json index 7a27c3a1a67a..7ad603981325 100644 --- a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Tasks.json +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Tasks.json @@ -60,6 +60,13 @@ "$ref": "./Commands.json#/definitions/CommandProperties" }, "readOnly": true + }, + "clientData": { + "type": "object", + "description": "Key value pairs of client data to attach meta data information to task", + "additionalProperties": { + "type": "string" + } } }, "required": [ "taskType" ], diff --git a/specification/datamigration/resource-manager/readme.go.md b/specification/datamigration/resource-manager/readme.go.md index 91483d023c19..bb3a6ffef642 100644 --- a/specification/datamigration/resource-manager/readme.go.md +++ b/specification/datamigration/resource-manager/readme.go.md @@ -15,6 +15,8 @@ go: batch: - tag: package-2017-11-15-preview - tag: package-2018-03-31-preview + - tag: package-2018-04-19 + - tag: package-2018-07-15-preview ``` @@ -34,4 +36,22 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2018-04-19' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2018-04-19/$(namespace) +``` + +### Tag: package-2018-07-15-preview and go + +These settings apply only when `--tag=package-2018-07-15-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2018-07-15-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2018-07-15-preview/$(namespace) +``` diff --git a/specification/datamigration/resource-manager/readme.md b/specification/datamigration/resource-manager/readme.md index 4b8ab5ac8c3f..8a0cf304bde5 100644 --- a/specification/datamigration/resource-manager/readme.md +++ b/specification/datamigration/resource-manager/readme.md @@ -74,6 +74,7 @@ input-file: - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlDbTask.json - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlMITask.json - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrationValidation.json +- Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MongoDbTasks.json - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/GetTdeCertificatesSqlTask.json - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Projects.json - Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Services.json @@ -162,6 +163,7 @@ swagger-to-sdk: - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node + - repo: azure-sdk-for-java ``` ## C# @@ -228,10 +230,24 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-datamigration ``` yaml $(java) && $(multiapi) batch: + - tag: package-2018-07-15-preview - tag: package-2017-11-15-preview - tag: package-2018-03-31-preview ``` +### Tag: package-2018-07-15-preview and java + +These settings apply only when `--tag=package-2018-07-15-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2018-07-15-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.azuredatabasemigrationservice.v2018_07_15_preview + output-folder: $(azure-libraries-for-java-folder)/azuredatabasemigrationservice/resource-manager/v2018_07_15_preview +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2017-11-15-preview and java These settings apply only when `--tag=package-2017-11-15-preview --java` is specified on the command line. diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/DTL.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/DTL.json new file mode 100644 index 000000000000..29bef183f87f --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/DTL.json @@ -0,0 +1,11018 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-09-15", + "title": "DevTestLabsClient", + "description": "The DevTest Labs Client." + }, + "host": "management.azure.com", + "schemes": [ "https" ], + "consumes": [ "application/json" ], + "produces": [ "application/json" ], + "paths": { + "/providers/Microsoft.DevTestLab/operations": { + "get": { + "tags": [ "ProviderOperations" ], + "description": "Result of the request to list REST API operations", + "operationId": "ProviderOperations_List", + "parameters": [ { "$ref": "#/parameters/api-version" } ], + "responses": { + "200": { + "description": "Success", + "schema": { "$ref": "#/definitions/ProviderOperationResult" } + } + }, + "x-ms-examples": { "ProviderOperations_List": { "$ref": "./examples/ProviderOperations_List.json" } }, + "x-ms-pageable": { "nextLinkName": "nextLink" } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DevTestLab/labs": { + "get": { + "tags": [ "Labs" ], + "description": "List labs in a subscription.", + "operationId": "Labs_ListBySubscription", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=defaultStorageAccount)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/LabList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/Lab", + "x-ms-examples": { "Labs_ListBySubscription": { "$ref": "./examples/Labs_ListBySubscription.json" } } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DevTestLab/locations/{locationName}/operations/{name}": { + "get": { + "tags": [ "Operations" ], + "description": "Get operation.", + "operationId": "Operations_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/locationName" }, + { + "name": "name", + "in": "path", + "description": "The name of the operation.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/OperationResult" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DevTestLab/schedules": { + "get": { + "tags": [ "GlobalSchedules" ], + "description": "List schedules in a subscription.", + "operationId": "GlobalSchedules_ListBySubscription", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=status)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ScheduleList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/Schedule" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs": { + "get": { + "tags": [ "Labs" ], + "description": "List labs in a resource group.", + "operationId": "Labs_ListByResourceGroup", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=defaultStorageAccount)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/LabList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/Lab", + "x-ms-examples": { "Labs_ListByResourceGroup": { "$ref": "./examples/Labs_ListByResourceGroup.json" } } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/artifactsources": { + "get": { + "tags": [ "ArtifactSources" ], + "description": "List artifact sources in a given lab.", + "operationId": "ArtifactSources_List", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=displayName)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ArtifactSourceList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/ArtifactSource" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/artifactsources/{artifactSourceName}/armtemplates": { + "get": { + "tags": [ "ArmTemplates" ], + "description": "List azure resource manager templates in a given artifact source.", + "operationId": "ArmTemplates_List", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "artifactSourceName", + "in": "path", + "description": "The name of the artifact source.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=displayName)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ArmTemplateList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/ArmTemplate" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/artifactsources/{artifactSourceName}/armtemplates/{name}": { + "get": { + "tags": [ "ArmTemplates" ], + "description": "Get azure resource manager template.", + "operationId": "ArmTemplates_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "artifactSourceName", + "in": "path", + "description": "The name of the artifact source.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the azure Resource Manager template.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=displayName)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ArmTemplate" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/artifactsources/{artifactSourceName}/artifacts": { + "get": { + "tags": [ "Artifacts" ], + "description": "List artifacts in a given artifact source.", + "operationId": "Artifacts_List", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "artifactSourceName", + "in": "path", + "description": "The name of the artifact source.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=title)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ArtifactList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/Artifact" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/artifactsources/{artifactSourceName}/artifacts/{name}": { + "get": { + "tags": [ "Artifacts" ], + "description": "Get artifact.", + "operationId": "Artifacts_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "artifactSourceName", + "in": "path", + "description": "The name of the artifact source.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the artifact.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=title)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Artifact" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/artifactsources/{artifactSourceName}/artifacts/{name}/generateArmTemplate": { + "post": { + "tags": [ "Artifacts" ], + "description": "Generates an ARM template for the given artifact, uploads the required files to a storage account, and validates the generated artifact.", + "operationId": "Artifacts_GenerateArmTemplate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "artifactSourceName", + "in": "path", + "description": "The name of the artifact source.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the artifact.", + "required": true, + "type": "string" + }, + { + "name": "generateArmTemplateRequest", + "in": "body", + "description": "Parameters for generating an ARM template for deploying artifacts.", + "required": true, + "schema": { "$ref": "#/definitions/GenerateArmTemplateRequest" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ArmTemplateInfo" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/artifactsources/{name}": { + "get": { + "tags": [ "ArtifactSources" ], + "description": "Get artifact source.", + "operationId": "ArtifactSources_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the artifact source.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=displayName)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ArtifactSource" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "put": { + "tags": [ "ArtifactSources" ], + "description": "Create or replace an existing artifact source.", + "operationId": "ArtifactSources_CreateOrUpdate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the artifact source.", + "required": true, + "type": "string" + }, + { + "name": "artifactSource", + "in": "body", + "description": "Properties of an artifact source.", + "required": true, + "schema": { "$ref": "#/definitions/ArtifactSource" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ArtifactSource" } + }, + "201": { + "description": "Created", + "schema": { "$ref": "#/definitions/ArtifactSource" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "delete": { + "tags": [ "ArtifactSources" ], + "description": "Delete artifact source.", + "operationId": "ArtifactSources_Delete", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the artifact source.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "204": { "description": "No Content" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "patch": { + "tags": [ "ArtifactSources" ], + "description": "Modify properties of artifact sources.", + "operationId": "ArtifactSources_Update", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the artifact source.", + "required": true, + "type": "string" + }, + { + "name": "artifactSource", + "in": "body", + "description": "Properties of an artifact source.", + "required": true, + "schema": { "$ref": "#/definitions/ArtifactSourceFragment" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ArtifactSource" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/costs/{name}": { + "get": { + "tags": [ "Costs" ], + "description": "Get cost.", + "operationId": "Costs_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the cost.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($expand=labCostDetails)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/LabCost" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "put": { + "tags": [ "Costs" ], + "description": "Create or replace an existing cost.", + "operationId": "Costs_CreateOrUpdate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the cost.", + "required": true, + "type": "string" + }, + { + "name": "labCost", + "in": "body", + "description": "A cost item.", + "required": true, + "schema": { "$ref": "#/definitions/LabCost" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/LabCost" } + }, + "201": { + "description": "Created", + "schema": { "$ref": "#/definitions/LabCost" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/customimages": { + "get": { + "tags": [ "CustomImages" ], + "description": "List custom images in a given lab.", + "operationId": "CustomImages_List", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=vm)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/CustomImageList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/CustomImage" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/customimages/{name}": { + "get": { + "tags": [ "CustomImages" ], + "description": "Get custom image.", + "operationId": "CustomImages_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the custom image.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=vm)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/CustomImage" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "put": { + "tags": [ "CustomImages" ], + "description": "Create or replace an existing custom image. This operation can take a while to complete.", + "operationId": "CustomImages_CreateOrUpdate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the custom image.", + "required": true, + "type": "string" + }, + { + "name": "customImage", + "in": "body", + "description": "A custom image.", + "required": true, + "schema": { "$ref": "#/definitions/CustomImage" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/CustomImage" } + }, + "201": { + "description": "Created", + "schema": { "$ref": "#/definitions/CustomImage" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ "CustomImages" ], + "description": "Delete custom image. This operation can take a while to complete.", + "operationId": "CustomImages_Delete", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the custom image.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "204": { "description": "No Content" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ "CustomImages" ], + "description": "Modify properties of custom images.", + "operationId": "CustomImages_Update", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the custom image.", + "required": true, + "type": "string" + }, + { + "name": "customImage", + "in": "body", + "description": "A custom image.", + "required": true, + "schema": { "$ref": "#/definitions/CustomImageFragment" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/CustomImage" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/formulas": { + "get": { + "tags": [ "Formulas" ], + "description": "List formulas in a given lab.", + "operationId": "Formulas_List", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=description)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/FormulaList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/Formula" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/formulas/{name}": { + "get": { + "tags": [ "Formulas" ], + "description": "Get formula.", + "operationId": "Formulas_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the formula.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=description)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Formula" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "put": { + "tags": [ "Formulas" ], + "description": "Create or replace an existing Formula. This operation can take a while to complete.", + "operationId": "Formulas_CreateOrUpdate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the formula.", + "required": true, + "type": "string" + }, + { + "name": "formula", + "in": "body", + "description": "A formula for creating a VM, specifying an image base and other parameters", + "required": true, + "schema": { "$ref": "#/definitions/Formula" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Formula" } + }, + "201": { + "description": "Created", + "schema": { "$ref": "#/definitions/Formula" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ "Formulas" ], + "description": "Delete formula.", + "operationId": "Formulas_Delete", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the formula.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "204": { "description": "No Content" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "patch": { + "tags": [ "Formulas" ], + "description": "Modify properties of formulas.", + "operationId": "Formulas_Update", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the formula.", + "required": true, + "type": "string" + }, + { + "name": "formula", + "in": "body", + "description": "A formula for creating a VM, specifying an image base and other parameters", + "required": true, + "schema": { "$ref": "#/definitions/FormulaFragment" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Formula" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/galleryimages": { + "get": { + "tags": [ "GalleryImages" ], + "description": "List gallery images in a given lab.", + "operationId": "GalleryImages_List", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=author)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/GalleryImageList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/GalleryImage" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/notificationchannels": { + "get": { + "tags": [ "NotificationChannels" ], + "description": "List notificationchannels in a given lab.", + "operationId": "NotificationChannels_List", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=webHookUrl)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/NotificationChannelList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/NotificationChannel" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/notificationchannels/{name}": { + "get": { + "tags": [ "NotificationChannels" ], + "description": "Get notificationchannel.", + "operationId": "NotificationChannels_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the notificationChannel.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=webHookUrl)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/NotificationChannel" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "put": { + "tags": [ "NotificationChannels" ], + "description": "Create or replace an existing notificationChannel.", + "operationId": "NotificationChannels_CreateOrUpdate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the notificationChannel.", + "required": true, + "type": "string" + }, + { + "name": "notificationChannel", + "in": "body", + "description": "A notification.", + "required": true, + "schema": { "$ref": "#/definitions/NotificationChannel" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/NotificationChannel" } + }, + "201": { + "description": "Created", + "schema": { "$ref": "#/definitions/NotificationChannel" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "delete": { + "tags": [ "NotificationChannels" ], + "description": "Delete notificationchannel.", + "operationId": "NotificationChannels_Delete", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the notificationChannel.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "204": { "description": "No Content" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "patch": { + "tags": [ "NotificationChannels" ], + "description": "Modify properties of notificationchannels.", + "operationId": "NotificationChannels_Update", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the notificationChannel.", + "required": true, + "type": "string" + }, + { + "name": "notificationChannel", + "in": "body", + "description": "A notification.", + "required": true, + "schema": { "$ref": "#/definitions/NotificationChannelFragment" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/NotificationChannel" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/notificationchannels/{name}/notify": { + "post": { + "tags": [ "NotificationChannels" ], + "description": "Send notification to provided channel.", + "operationId": "NotificationChannels_Notify", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the notificationChannel.", + "required": true, + "type": "string" + }, + { + "name": "notifyParameters", + "in": "body", + "description": "Properties for generating a Notification.", + "required": true, + "schema": { "$ref": "#/definitions/NotifyParameters" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/policysets/{name}/evaluatePolicies": { + "post": { + "tags": [ "PolicySets" ], + "description": "Evaluates lab policy.", + "operationId": "PolicySets_EvaluatePolicies", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the policy set.", + "required": true, + "type": "string" + }, + { + "name": "evaluatePoliciesRequest", + "in": "body", + "description": "Request body for evaluating a policy set.", + "required": true, + "schema": { "$ref": "#/definitions/EvaluatePoliciesRequest" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/EvaluatePoliciesResponse" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/policysets/{policySetName}/policies": { + "get": { + "tags": [ "Policies" ], + "description": "List policies in a given policy set.", + "operationId": "Policies_List", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "policySetName", + "in": "path", + "description": "The name of the policy set.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=description)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/PolicyList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/Policy" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/policysets/{policySetName}/policies/{name}": { + "get": { + "tags": [ "Policies" ], + "description": "Get policy.", + "operationId": "Policies_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "policySetName", + "in": "path", + "description": "The name of the policy set.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the policy.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=description)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Policy" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "put": { + "tags": [ "Policies" ], + "description": "Create or replace an existing policy.", + "operationId": "Policies_CreateOrUpdate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "policySetName", + "in": "path", + "description": "The name of the policy set.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the policy.", + "required": true, + "type": "string" + }, + { + "name": "policy", + "in": "body", + "description": "A Policy.", + "required": true, + "schema": { "$ref": "#/definitions/Policy" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Policy" } + }, + "201": { + "description": "Created", + "schema": { "$ref": "#/definitions/Policy" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "delete": { + "tags": [ "Policies" ], + "description": "Delete policy.", + "operationId": "Policies_Delete", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "policySetName", + "in": "path", + "description": "The name of the policy set.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the policy.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "204": { "description": "No Content" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "patch": { + "tags": [ "Policies" ], + "description": "Modify properties of policies.", + "operationId": "Policies_Update", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "policySetName", + "in": "path", + "description": "The name of the policy set.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the policy.", + "required": true, + "type": "string" + }, + { + "name": "policy", + "in": "body", + "description": "A Policy.", + "required": true, + "schema": { "$ref": "#/definitions/PolicyFragment" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Policy" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/schedules": { + "get": { + "tags": [ "Schedules" ], + "description": "List schedules in a given lab.", + "operationId": "Schedules_List", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=status)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ScheduleList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/Schedule" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/schedules/{name}": { + "get": { + "tags": [ "Schedules" ], + "description": "Get schedule.", + "operationId": "Schedules_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=status)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Schedule" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "put": { + "tags": [ "Schedules" ], + "description": "Create or replace an existing schedule.", + "operationId": "Schedules_CreateOrUpdate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { + "name": "schedule", + "in": "body", + "description": "A schedule.", + "required": true, + "schema": { "$ref": "#/definitions/Schedule" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Schedule" } + }, + "201": { + "description": "Created", + "schema": { "$ref": "#/definitions/Schedule" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "delete": { + "tags": [ "Schedules" ], + "description": "Delete schedule.", + "operationId": "Schedules_Delete", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "204": { "description": "No Content" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "patch": { + "tags": [ "Schedules" ], + "description": "Modify properties of schedules.", + "operationId": "Schedules_Update", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { + "name": "schedule", + "in": "body", + "description": "A schedule.", + "required": true, + "schema": { "$ref": "#/definitions/ScheduleFragment" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Schedule" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/schedules/{name}/execute": { + "post": { + "tags": [ "Schedules" ], + "description": "Execute a schedule. This operation can take a while to complete.", + "operationId": "Schedules_Execute", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/schedules/{name}/listApplicable": { + "post": { + "tags": [ "Schedules" ], + "description": "Lists all applicable schedules", + "operationId": "Schedules_ListApplicable", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ScheduleList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/servicerunners": { + "get": { + "tags": [ "ServiceRunners" ], + "description": "List service runners in a given lab.", + "operationId": "ServiceRunners_List", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ServiceRunnerList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/ServiceRunner" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/servicerunners/{name}": { + "get": { + "tags": [ "ServiceRunners" ], + "description": "Get service runner.", + "operationId": "ServiceRunners_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the service runner.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ServiceRunner" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "put": { + "tags": [ "ServiceRunners" ], + "description": "Create or replace an existing Service runner.", + "operationId": "ServiceRunners_CreateOrUpdate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the service runner.", + "required": true, + "type": "string" + }, + { + "name": "serviceRunner", + "in": "body", + "description": "A container for a managed identity to execute DevTest lab services.", + "required": true, + "schema": { "$ref": "#/definitions/ServiceRunner" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ServiceRunner" } + }, + "201": { + "description": "Created", + "schema": { "$ref": "#/definitions/ServiceRunner" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "delete": { + "tags": [ "ServiceRunners" ], + "description": "Delete service runner.", + "operationId": "ServiceRunners_Delete", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the service runner.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "204": { "description": "No Content" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/users": { + "get": { + "tags": [ "Users" ], + "description": "List user profiles in a given lab.", + "operationId": "Users_List", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=identity)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/UserList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/User" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/users/{name}": { + "get": { + "tags": [ "Users" ], + "description": "Get user profile.", + "operationId": "Users_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=identity)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/User" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "put": { + "tags": [ "Users" ], + "description": "Create or replace an existing user profile. This operation can take a while to complete.", + "operationId": "Users_CreateOrUpdate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "user", + "in": "body", + "description": "Profile of a lab user.", + "required": true, + "schema": { "$ref": "#/definitions/User" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/User" } + }, + "201": { + "description": "Created", + "schema": { "$ref": "#/definitions/User" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ "Users" ], + "description": "Delete user profile. This operation can take a while to complete.", + "operationId": "Users_Delete", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "204": { "description": "No Content" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ "Users" ], + "description": "Modify properties of user profiles.", + "operationId": "Users_Update", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "user", + "in": "body", + "description": "Profile of a lab user.", + "required": true, + "schema": { "$ref": "#/definitions/UserFragment" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/User" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/users/{userName}/disks": { + "get": { + "tags": [ "Disks" ], + "description": "List disks in a given user profile.", + "operationId": "Disks_List", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=diskType)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/DiskList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/Disk" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/users/{userName}/disks/{name}": { + "get": { + "tags": [ "Disks" ], + "description": "Get disk.", + "operationId": "Disks_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the disk.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=diskType)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Disk" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "put": { + "tags": [ "Disks" ], + "description": "Create or replace an existing disk. This operation can take a while to complete.", + "operationId": "Disks_CreateOrUpdate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the disk.", + "required": true, + "type": "string" + }, + { + "name": "disk", + "in": "body", + "description": "A Disk.", + "required": true, + "schema": { "$ref": "#/definitions/Disk" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Disk" } + }, + "201": { + "description": "Created", + "schema": { "$ref": "#/definitions/Disk" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ "Disks" ], + "description": "Delete disk. This operation can take a while to complete.", + "operationId": "Disks_Delete", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the disk.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "204": { "description": "No Content" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ "Disks" ], + "description": "Modify properties of disks.", + "operationId": "Disks_Update", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the disk.", + "required": true, + "type": "string" + }, + { + "name": "disk", + "in": "body", + "description": "A Disk.", + "required": true, + "schema": { "$ref": "#/definitions/DiskFragment" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Disk" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/users/{userName}/disks/{name}/attach": { + "post": { + "tags": [ "Disks" ], + "description": "Attach and create the lease of the disk to the virtual machine. This operation can take a while to complete.", + "operationId": "Disks_Attach", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the disk.", + "required": true, + "type": "string" + }, + { + "name": "attachDiskProperties", + "in": "body", + "description": "Properties of the disk to attach.", + "required": true, + "schema": { "$ref": "#/definitions/AttachDiskProperties" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/users/{userName}/disks/{name}/detach": { + "post": { + "tags": [ "Disks" ], + "description": "Detach and break the lease of the disk attached to the virtual machine. This operation can take a while to complete.", + "operationId": "Disks_Detach", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the disk.", + "required": true, + "type": "string" + }, + { + "name": "detachDiskProperties", + "in": "body", + "description": "Properties of the disk to detach.", + "required": true, + "schema": { "$ref": "#/definitions/DetachDiskProperties" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/users/{userName}/environments": { + "get": { + "tags": [ "Environments" ], + "description": "List environments in a given user profile.", + "operationId": "Environments_List", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=deploymentProperties)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/DtlEnvironmentList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/DtlEnvironment" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/users/{userName}/environments/{name}": { + "get": { + "tags": [ "Environments" ], + "description": "Get environment.", + "operationId": "Environments_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the environment.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=deploymentProperties)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/DtlEnvironment" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "put": { + "tags": [ "Environments" ], + "description": "Create or replace an existing environment. This operation can take a while to complete.", + "operationId": "Environments_CreateOrUpdate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the environment.", + "required": true, + "type": "string" + }, + { + "name": "dtlEnvironment", + "in": "body", + "description": "An environment, which is essentially an ARM template deployment.", + "required": true, + "schema": { "$ref": "#/definitions/DtlEnvironment" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/DtlEnvironment" } + }, + "201": { + "description": "Created", + "schema": { "$ref": "#/definitions/DtlEnvironment" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ "Environments" ], + "description": "Delete environment. This operation can take a while to complete.", + "operationId": "Environments_Delete", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the environment.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "204": { "description": "No Content" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ "Environments" ], + "description": "Modify properties of environments.", + "operationId": "Environments_Update", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the environment.", + "required": true, + "type": "string" + }, + { + "name": "dtlEnvironment", + "in": "body", + "description": "An environment, which is essentially an ARM template deployment.", + "required": true, + "schema": { "$ref": "#/definitions/DtlEnvironmentFragment" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/DtlEnvironment" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/users/{userName}/secrets": { + "get": { + "tags": [ "Secrets" ], + "description": "List secrets in a given user profile.", + "operationId": "Secrets_List", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=value)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/SecretList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/Secret" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/users/{userName}/secrets/{name}": { + "get": { + "tags": [ "Secrets" ], + "description": "Get secret.", + "operationId": "Secrets_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the secret.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=value)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Secret" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "put": { + "tags": [ "Secrets" ], + "description": "Create or replace an existing secret. This operation can take a while to complete.", + "operationId": "Secrets_CreateOrUpdate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the secret.", + "required": true, + "type": "string" + }, + { + "name": "secret", + "in": "body", + "description": "A secret.", + "required": true, + "schema": { "$ref": "#/definitions/Secret" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Secret" } + }, + "201": { + "description": "Created", + "schema": { "$ref": "#/definitions/Secret" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ "Secrets" ], + "description": "Delete secret.", + "operationId": "Secrets_Delete", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the secret.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "204": { "description": "No Content" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "patch": { + "tags": [ "Secrets" ], + "description": "Modify properties of secrets.", + "operationId": "Secrets_Update", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the secret.", + "required": true, + "type": "string" + }, + { + "name": "secret", + "in": "body", + "description": "A secret.", + "required": true, + "schema": { "$ref": "#/definitions/SecretFragment" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Secret" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/users/{userName}/servicefabrics": { + "get": { + "tags": [ "ServiceFabrics" ], + "description": "List service fabrics in a given user profile.", + "operationId": "ServiceFabrics_List", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($expand=applicableSchedule)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ServiceFabricList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/ServiceFabric" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/users/{userName}/servicefabrics/{name}": { + "get": { + "tags": [ "ServiceFabrics" ], + "description": "Get service fabric.", + "operationId": "ServiceFabrics_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the service Fabric.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($expand=applicableSchedule)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ServiceFabric" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "put": { + "tags": [ "ServiceFabrics" ], + "description": "Create or replace an existing Service Fabric. This operation can take a while to complete.", + "operationId": "ServiceFabrics_CreateOrUpdate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the service Fabric.", + "required": true, + "type": "string" + }, + { + "name": "serviceFabric", + "in": "body", + "description": "A Service Fabric.", + "required": true, + "schema": { "$ref": "#/definitions/ServiceFabric" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ServiceFabric" } + }, + "201": { + "description": "Created", + "schema": { "$ref": "#/definitions/ServiceFabric" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ "ServiceFabrics" ], + "description": "Delete service fabric. This operation can take a while to complete.", + "operationId": "ServiceFabrics_Delete", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the service Fabric.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "204": { "description": "No Content" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ "ServiceFabrics" ], + "description": "Modify properties of service fabrics.", + "operationId": "ServiceFabrics_Update", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the service Fabric.", + "required": true, + "type": "string" + }, + { + "name": "serviceFabric", + "in": "body", + "description": "A Service Fabric.", + "required": true, + "schema": { "$ref": "#/definitions/ServiceFabricFragment" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ServiceFabric" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/users/{userName}/servicefabrics/{name}/listApplicableSchedules": { + "post": { + "tags": [ "ServiceFabrics" ], + "description": "Lists the applicable start/stop schedules, if any.", + "operationId": "ServiceFabrics_ListApplicableSchedules", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the service Fabric.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ApplicableSchedule" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/users/{userName}/servicefabrics/{name}/start": { + "post": { + "tags": [ "ServiceFabrics" ], + "description": "Start a service fabric. This operation can take a while to complete.", + "operationId": "ServiceFabrics_Start", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the service Fabric.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/users/{userName}/servicefabrics/{name}/stop": { + "post": { + "tags": [ "ServiceFabrics" ], + "description": "Stop a service fabric This operation can take a while to complete.", + "operationId": "ServiceFabrics_Stop", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the service Fabric.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/users/{userName}/servicefabrics/{serviceFabricName}/schedules": { + "get": { + "tags": [ "ServiceFabricSchedules" ], + "description": "List schedules in a given service fabric.", + "operationId": "ServiceFabricSchedules_List", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "serviceFabricName", + "in": "path", + "description": "The name of the service Fabric.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=status)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ScheduleList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/Schedule" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/users/{userName}/servicefabrics/{serviceFabricName}/schedules/{name}": { + "get": { + "tags": [ "ServiceFabricSchedules" ], + "description": "Get schedule.", + "operationId": "ServiceFabricSchedules_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "serviceFabricName", + "in": "path", + "description": "The name of the service Fabric.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=status)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Schedule" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "put": { + "tags": [ "ServiceFabricSchedules" ], + "description": "Create or replace an existing schedule.", + "operationId": "ServiceFabricSchedules_CreateOrUpdate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "serviceFabricName", + "in": "path", + "description": "The name of the service Fabric.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { + "name": "schedule", + "in": "body", + "description": "A schedule.", + "required": true, + "schema": { "$ref": "#/definitions/Schedule" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Schedule" } + }, + "201": { + "description": "Created", + "schema": { "$ref": "#/definitions/Schedule" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "delete": { + "tags": [ "ServiceFabricSchedules" ], + "description": "Delete schedule.", + "operationId": "ServiceFabricSchedules_Delete", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "serviceFabricName", + "in": "path", + "description": "The name of the service Fabric.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "204": { "description": "No Content" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "patch": { + "tags": [ "ServiceFabricSchedules" ], + "description": "Modify properties of schedules.", + "operationId": "ServiceFabricSchedules_Update", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "serviceFabricName", + "in": "path", + "description": "The name of the service Fabric.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { + "name": "schedule", + "in": "body", + "description": "A schedule.", + "required": true, + "schema": { "$ref": "#/definitions/ScheduleFragment" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Schedule" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/users/{userName}/servicefabrics/{serviceFabricName}/schedules/{name}/execute": { + "post": { + "tags": [ "ServiceFabricSchedules" ], + "description": "Execute a schedule. This operation can take a while to complete.", + "operationId": "ServiceFabricSchedules_Execute", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the user profile.", + "required": true, + "type": "string" + }, + { + "name": "serviceFabricName", + "in": "path", + "description": "The name of the service Fabric.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines": { + "get": { + "tags": [ "VirtualMachines" ], + "description": "List virtual machines in a given lab.", + "operationId": "VirtualMachines_List", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($expand=artifacts,computeVm,networkInterface,applicableSchedule)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/LabVirtualMachineList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/LabVirtualMachine", + "x-ms-examples": { "VirtualMachines_List": { "$ref": "./examples/VirtualMachines_List.json" } } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}": { + "get": { + "tags": [ "VirtualMachines" ], + "description": "Get virtual machine.", + "operationId": "VirtualMachines_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($expand=artifacts,computeVm,networkInterface,applicableSchedule)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/LabVirtualMachine" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "VirtualMachines_Get": { "$ref": "./examples/VirtualMachines_Get.json" } } + }, + "put": { + "tags": [ "VirtualMachines" ], + "description": "Create or replace an existing Virtual machine. This operation can take a while to complete.", + "operationId": "VirtualMachines_CreateOrUpdate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { + "name": "labVirtualMachine", + "in": "body", + "description": "A virtual machine.", + "required": true, + "schema": { "$ref": "#/definitions/LabVirtualMachine" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/LabVirtualMachine" } + }, + "201": { + "description": "Created", + "schema": { "$ref": "#/definitions/LabVirtualMachine" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "VirtualMachines_CreateOrUpdate": { "$ref": "./examples/VirtualMachines_CreateOrUpdate.json" } }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ "VirtualMachines" ], + "description": "Delete virtual machine. This operation can take a while to complete.", + "operationId": "VirtualMachines_Delete", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "204": { "description": "No Content" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "VirtualMachines_Delete": { "$ref": "./examples/VirtualMachines_Delete.json" } }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ "VirtualMachines" ], + "description": "Modify properties of virtual machines.", + "operationId": "VirtualMachines_Update", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { + "name": "labVirtualMachine", + "in": "body", + "description": "A virtual machine.", + "required": true, + "schema": { "$ref": "#/definitions/LabVirtualMachineFragment" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/LabVirtualMachine" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "VirtualMachines_Update": { "$ref": "./examples/VirtualMachines_Update.json" } } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}/addDataDisk": { + "post": { + "tags": [ "VirtualMachines" ], + "description": "Attach a new or existing data disk to virtual machine. This operation can take a while to complete.", + "operationId": "VirtualMachines_AddDataDisk", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { + "name": "dataDiskProperties", + "in": "body", + "description": "Request body for adding a new or existing data disk to a virtual machine.", + "required": true, + "schema": { "$ref": "#/definitions/DataDiskProperties" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}/applyArtifacts": { + "post": { + "tags": [ "VirtualMachines" ], + "description": "Apply artifacts to virtual machine. This operation can take a while to complete.", + "operationId": "VirtualMachines_ApplyArtifacts", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { + "name": "applyArtifactsRequest", + "in": "body", + "description": "Request body for applying artifacts to a virtual machine.", + "required": true, + "schema": { "$ref": "#/definitions/ApplyArtifactsRequest" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}/claim": { + "post": { + "tags": [ "VirtualMachines" ], + "description": "Take ownership of an existing virtual machine This operation can take a while to complete.", + "operationId": "VirtualMachines_Claim", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "VirtualMachines_Claim": { "$ref": "./examples/VirtualMachines_Claim.json" } }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}/detachDataDisk": { + "post": { + "tags": [ "VirtualMachines" ], + "description": "Detach the specified disk from the virtual machine. This operation can take a while to complete.", + "operationId": "VirtualMachines_DetachDataDisk", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { + "name": "detachDataDiskProperties", + "in": "body", + "description": "Request body for detaching data disk from a virtual machine.", + "required": true, + "schema": { "$ref": "#/definitions/DetachDataDiskProperties" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}/getRdpFileContents": { + "post": { + "tags": [ "VirtualMachines" ], + "description": "Gets a string that represents the contents of the RDP file for the virtual machine", + "operationId": "VirtualMachines_GetRdpFileContents", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/RdpConnection" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "VirtualMachines_GetRdpFileContents": { "$ref": "./examples/VirtualMachines_GetRdpFileContents.json" } } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}/listApplicableSchedules": { + "post": { + "tags": [ "VirtualMachines" ], + "description": "Lists the applicable start/stop schedules, if any.", + "operationId": "VirtualMachines_ListApplicableSchedules", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ApplicableSchedule" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}/redeploy": { + "post": { + "tags": [ "VirtualMachines" ], + "description": "Redeploy a virtual machine This operation can take a while to complete.", + "operationId": "VirtualMachines_Redeploy", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "VirtualMachines_Redeploy": { "$ref": "./examples/VirtualMachines_Redeploy.json" } }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}/resize": { + "post": { + "tags": [ "VirtualMachines" ], + "description": "Resize Virtual Machine. This operation can take a while to complete.", + "operationId": "VirtualMachines_Resize", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { + "name": "resizeLabVirtualMachineProperties", + "in": "body", + "description": "Request body for resizing a virtual machine.", + "required": true, + "schema": { "$ref": "#/definitions/ResizeLabVirtualMachineProperties" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "VirtualMachines_Resize": { "$ref": "./examples/VirtualMachines_Resize.json" } }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}/restart": { + "post": { + "tags": [ "VirtualMachines" ], + "description": "Restart a virtual machine. This operation can take a while to complete.", + "operationId": "VirtualMachines_Restart", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "VirtualMachines_Restart": { "$ref": "./examples/VirtualMachines_Restart.json" } }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}/start": { + "post": { + "tags": [ "VirtualMachines" ], + "description": "Start a virtual machine. This operation can take a while to complete.", + "operationId": "VirtualMachines_Start", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "VirtualMachines_Start": { "$ref": "./examples/VirtualMachines_Start.json" } }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}/stop": { + "post": { + "tags": [ "VirtualMachines" ], + "description": "Stop a virtual machine This operation can take a while to complete.", + "operationId": "VirtualMachines_Stop", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "VirtualMachines_Stop": { "$ref": "./examples/VirtualMachines_Stop.json" } }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}/transferDisks": { + "post": { + "tags": [ "VirtualMachines" ], + "description": "Transfers all data disks attached to the virtual machine to be owned by the current user. This operation can take a while to complete.", + "operationId": "VirtualMachines_TransferDisks", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}/unClaim": { + "post": { + "tags": [ "VirtualMachines" ], + "description": "Release ownership of an existing virtual machine This operation can take a while to complete.", + "operationId": "VirtualMachines_UnClaim", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "VirtualMachines_UnClaim": { "$ref": "./examples/VirtualMachines_UnClaim.json" } }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{virtualMachineName}/schedules": { + "get": { + "tags": [ "VirtualMachineSchedules" ], + "description": "List schedules in a given virtual machine.", + "operationId": "VirtualMachineSchedules_List", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "virtualMachineName", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=status)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ScheduleList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/Schedule" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{virtualMachineName}/schedules/{name}": { + "get": { + "tags": [ "VirtualMachineSchedules" ], + "description": "Get schedule.", + "operationId": "VirtualMachineSchedules_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "virtualMachineName", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=status)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Schedule" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "put": { + "tags": [ "VirtualMachineSchedules" ], + "description": "Create or replace an existing schedule.", + "operationId": "VirtualMachineSchedules_CreateOrUpdate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "virtualMachineName", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { + "name": "schedule", + "in": "body", + "description": "A schedule.", + "required": true, + "schema": { "$ref": "#/definitions/Schedule" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Schedule" } + }, + "201": { + "description": "Created", + "schema": { "$ref": "#/definitions/Schedule" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "delete": { + "tags": [ "VirtualMachineSchedules" ], + "description": "Delete schedule.", + "operationId": "VirtualMachineSchedules_Delete", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "virtualMachineName", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "204": { "description": "No Content" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "patch": { + "tags": [ "VirtualMachineSchedules" ], + "description": "Modify properties of schedules.", + "operationId": "VirtualMachineSchedules_Update", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "virtualMachineName", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { + "name": "schedule", + "in": "body", + "description": "A schedule.", + "required": true, + "schema": { "$ref": "#/definitions/ScheduleFragment" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Schedule" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{virtualMachineName}/schedules/{name}/execute": { + "post": { + "tags": [ "VirtualMachineSchedules" ], + "description": "Execute a schedule. This operation can take a while to complete.", + "operationId": "VirtualMachineSchedules_Execute", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "virtualMachineName", + "in": "path", + "description": "The name of the virtual machine.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualnetworks": { + "get": { + "tags": [ "VirtualNetworks" ], + "description": "List virtual networks in a given lab.", + "operationId": "VirtualNetworks_List", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($expand=externalSubnets)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/VirtualNetworkList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/VirtualNetwork", + "x-ms-examples": { "VirtualNetworks_List": { "$ref": "./examples/VirtualNetworks_List.json" } } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualnetworks/{name}": { + "get": { + "tags": [ "VirtualNetworks" ], + "description": "Get virtual network.", + "operationId": "VirtualNetworks_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual network.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($expand=externalSubnets)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/VirtualNetwork" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "VirtualNetworks_Get": { "$ref": "./examples/VirtualNetworks_Get.json" } } + }, + "put": { + "tags": [ "VirtualNetworks" ], + "description": "Create or replace an existing virtual network. This operation can take a while to complete.", + "operationId": "VirtualNetworks_CreateOrUpdate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual network.", + "required": true, + "type": "string" + }, + { + "name": "virtualNetwork", + "in": "body", + "description": "A virtual network.", + "required": true, + "schema": { "$ref": "#/definitions/VirtualNetwork" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/VirtualNetwork" } + }, + "201": { + "description": "Created", + "schema": { "$ref": "#/definitions/VirtualNetwork" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "VirtualNetworks_CreateOrUpdate": { "$ref": "./examples/VirtualNetworks_CreateOrUpdate.json" } }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ "VirtualNetworks" ], + "description": "Delete virtual network. This operation can take a while to complete.", + "operationId": "VirtualNetworks_Delete", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual network.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "204": { "description": "No Content" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "VirtualNetworks_Delete": { "$ref": "./examples/VirtualNetworks_Delete.json" } }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ "VirtualNetworks" ], + "description": "Modify properties of virtual networks.", + "operationId": "VirtualNetworks_Update", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "labName", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the virtual network.", + "required": true, + "type": "string" + }, + { + "name": "virtualNetwork", + "in": "body", + "description": "A virtual network.", + "required": true, + "schema": { "$ref": "#/definitions/VirtualNetworkFragment" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/VirtualNetwork" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "VirtualNetworks_Update": { "$ref": "./examples/VirtualNetworks_Update.json" } } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{name}": { + "get": { + "tags": [ "Labs" ], + "description": "Get lab.", + "operationId": "Labs_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "name", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=defaultStorageAccount)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Lab" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "Labs_Get": { "$ref": "./examples/Labs_Get.json" } } + }, + "put": { + "tags": [ "Labs" ], + "description": "Create or replace an existing lab. This operation can take a while to complete.", + "operationId": "Labs_CreateOrUpdate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "name", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "lab", + "in": "body", + "description": "A lab.", + "required": true, + "schema": { "$ref": "#/definitions/Lab" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Lab" } + }, + "201": { + "description": "Created", + "schema": { "$ref": "#/definitions/Lab" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "Labs_CreateOrUpdate": { "$ref": "./examples/Labs_CreateOrUpdate.json" } }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ "Labs" ], + "description": "Delete lab. This operation can take a while to complete.", + "operationId": "Labs_Delete", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "name", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "204": { "description": "No Content" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "Labs_Delete": { "$ref": "./examples/Labs_Delete.json" } }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ "Labs" ], + "description": "Modify properties of labs.", + "operationId": "Labs_Update", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "name", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "lab", + "in": "body", + "description": "A lab.", + "required": true, + "schema": { "$ref": "#/definitions/LabFragment" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Lab" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "Labs_Update": { "$ref": "./examples/Labs_Update.json" } } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{name}/claimAnyVm": { + "post": { + "tags": [ "Labs" ], + "description": "Claim a random claimable virtual machine in the lab. This operation can take a while to complete.", + "operationId": "Labs_ClaimAnyVm", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "name", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "Labs_ClaimAnyVm": { "$ref": "./examples/Labs_ClaimAnyVm.json" } }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{name}/createEnvironment": { + "post": { + "tags": [ "Labs" ], + "description": "Create virtual machines in a lab. This operation can take a while to complete.", + "operationId": "Labs_CreateEnvironment", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "name", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "labVirtualMachineCreationParameter", + "in": "body", + "description": "Properties for creating a virtual machine.", + "required": true, + "schema": { "$ref": "#/definitions/LabVirtualMachineCreationParameter" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "Labs_CreateEnvironment": { "$ref": "./examples/Labs_CreateEnvironment.json" } }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{name}/exportResourceUsage": { + "post": { + "tags": [ "Labs" ], + "description": "Exports the lab resource usage into a storage account This operation can take a while to complete.", + "operationId": "Labs_ExportResourceUsage", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "name", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "exportResourceUsageParameters", + "in": "body", + "description": "The parameters of the export operation.", + "required": true, + "schema": { "$ref": "#/definitions/ExportResourceUsageParameters" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{name}/generateUploadUri": { + "post": { + "tags": [ "Labs" ], + "description": "Generate a URI for uploading custom disk images to a Lab.", + "operationId": "Labs_GenerateUploadUri", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "name", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "generateUploadUriParameter", + "in": "body", + "description": "Properties for generating an upload URI.", + "required": true, + "schema": { "$ref": "#/definitions/GenerateUploadUriParameter" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/GenerateUploadUriResponse" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { "Labs_GenerateUploadUri": { "$ref": "./examples/Labs_GenerateUploadUri.json" } } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{name}/importVirtualMachine": { + "post": { + "tags": [ "Labs" ], + "description": "Import a virtual machine into a different lab. This operation can take a while to complete.", + "operationId": "Labs_ImportVirtualMachine", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "name", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { + "name": "importLabVirtualMachineRequest", + "in": "body", + "description": "This represents the payload required to import a virtual machine from a different lab into the current one", + "required": true, + "schema": { "$ref": "#/definitions/ImportLabVirtualMachineRequest" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{name}/listVhds": { + "post": { + "tags": [ "Labs" ], + "description": "List disk images available for custom image creation.", + "operationId": "Labs_ListVhds", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "name", + "in": "path", + "description": "The name of the lab.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/LabVhdList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/schedules": { + "get": { + "tags": [ "GlobalSchedules" ], + "description": "List schedules in a resource group.", + "operationId": "GlobalSchedules_ListByResourceGroup", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=status)'", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "The filter to apply to the operation. Example: '$filter=contains(name,'myName')", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The maximum number of resources to return from the operation. Example: '$top=10'", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "description": "The ordering expression for the results, using OData notation. Example: '$orderby=name desc'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/ScheduleList" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-odata": "#/definitions/Schedule" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/schedules/{name}": { + "get": { + "tags": [ "GlobalSchedules" ], + "description": "Get schedule.", + "operationId": "GlobalSchedules_Get", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "Specify the $expand query. Example: 'properties($select=status)'", + "required": false, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Schedule" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "put": { + "tags": [ "GlobalSchedules" ], + "description": "Create or replace an existing schedule.", + "operationId": "GlobalSchedules_CreateOrUpdate", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { + "name": "schedule", + "in": "body", + "description": "A schedule.", + "required": true, + "schema": { "$ref": "#/definitions/Schedule" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Schedule" } + }, + "201": { + "description": "Created", + "schema": { "$ref": "#/definitions/Schedule" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "delete": { + "tags": [ "GlobalSchedules" ], + "description": "Delete schedule.", + "operationId": "GlobalSchedules_Delete", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "204": { "description": "No Content" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + }, + "patch": { + "tags": [ "GlobalSchedules" ], + "description": "Modify properties of schedules.", + "operationId": "GlobalSchedules_Update", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { + "name": "schedule", + "in": "body", + "description": "A schedule.", + "required": true, + "schema": { "$ref": "#/definitions/ScheduleFragment" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { + "description": "OK", + "schema": { "$ref": "#/definitions/Schedule" } + }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/schedules/{name}/execute": { + "post": { + "tags": [ "GlobalSchedules" ], + "description": "Execute a schedule. This operation can take a while to complete.", + "operationId": "GlobalSchedules_Execute", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/schedules/{name}/retarget": { + "post": { + "tags": [ "GlobalSchedules" ], + "description": "Updates a schedule's target resource Id. This operation can take a while to complete.", + "operationId": "GlobalSchedules_Retarget", + "parameters": [ + { "$ref": "#/parameters/subscriptionId" }, + { "$ref": "#/parameters/resourceGroupName" }, + { + "name": "name", + "in": "path", + "description": "The name of the schedule.", + "required": true, + "type": "string" + }, + { + "name": "retargetScheduleProperties", + "in": "body", + "description": "Properties for retargeting a virtual machine schedule.", + "required": true, + "schema": { "$ref": "#/definitions/RetargetScheduleProperties" } + }, + { "$ref": "#/parameters/api-version" } + ], + "responses": { + "200": { "description": "OK" }, + "202": { "description": "Accepted" }, + "default": { + "description": "BadRequest", + "schema": { "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-long-running-operation": true + } + } + }, + "definitions": { + "ApplicableSchedule": { + "description": "Schedules applicable to a virtual machine. The schedules may have been defined on a VM or on lab level.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/ApplicableScheduleProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "ApplicableScheduleFragment": { + "description": "Schedules applicable to a virtual machine. The schedules may have been defined on a VM or on lab level.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/UpdateResource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/ApplicableSchedulePropertiesFragment", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "ApplicableScheduleProperties": { + "description": "Properties of a schedules applicable to a virtual machine.", + "type": "object", + "properties": { + "labVmsShutdown": { + "$ref": "#/definitions/Schedule", + "description": "The auto-shutdown schedule, if one has been set at the lab or lab resource level." + }, + "labVmsStartup": { + "$ref": "#/definitions/Schedule", + "description": "The auto-startup schedule, if one has been set at the lab or lab resource level." + } + } + }, + "ApplicableSchedulePropertiesFragment": { + "description": "Properties of a schedules applicable to a virtual machine.", + "type": "object", + "properties": { + "labVmsShutdown": { + "$ref": "#/definitions/ScheduleFragment", + "description": "The auto-shutdown schedule, if one has been set at the lab or lab resource level." + }, + "labVmsStartup": { + "$ref": "#/definitions/ScheduleFragment", + "description": "The auto-startup schedule, if one has been set at the lab or lab resource level." + } + } + }, + "ApplyArtifactsRequest": { + "description": "Request body for applying artifacts to a virtual machine.", + "type": "object", + "properties": { + "artifacts": { + "description": "The list of artifacts to apply.", + "type": "array", + "items": { "$ref": "#/definitions/ArtifactInstallProperties" } + } + } + }, + "ArmTemplate": { + "description": "An Azure Resource Manager template.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/ArmTemplateProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "ArmTemplateInfo": { + "description": "Information about a generated ARM template.", + "type": "object", + "properties": { + "template": { + "description": "The template's contents.", + "type": "object" + }, + "parameters": { + "description": "The parameters of the ARM template.", + "type": "object" + } + } + }, + "ArmTemplateList": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of the list operation.", + "type": "array", + "items": { "$ref": "#/definitions/ArmTemplate" } + }, + "nextLink": { + "description": "Link for next set of results.", + "type": "string" + } + } + }, + "ArmTemplateParameterProperties": { + "description": "Properties of an Azure Resource Manager template parameter.", + "type": "object", + "properties": { + "name": { + "description": "The name of the template parameter.", + "type": "string" + }, + "value": { + "description": "The value of the template parameter.", + "type": "string" + } + } + }, + "ArmTemplateParameterPropertiesFragment": { + "description": "Properties of an Azure Resource Manager template parameter.", + "type": "object", + "properties": { + "name": { + "description": "The name of the template parameter.", + "type": "string" + }, + "value": { + "description": "The value of the template parameter.", + "type": "string" + } + } + }, + "ArmTemplateProperties": { + "description": "Properties of an Azure Resource Manager template.", + "type": "object", + "properties": { + "displayName": { + "description": "The display name of the ARM template.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description of the ARM template.", + "type": "string", + "readOnly": true + }, + "publisher": { + "description": "The publisher of the ARM template.", + "type": "string", + "readOnly": true + }, + "icon": { + "description": "The URI to the icon of the ARM template.", + "type": "string", + "readOnly": true + }, + "contents": { + "description": "The contents of the ARM template.", + "type": "object", + "readOnly": true + }, + "createdDate": { + "format": "date-time", + "description": "The creation date of the armTemplate.", + "type": "string", + "readOnly": true + }, + "parametersValueFilesInfo": { + "description": "File name and parameter values information from all azuredeploy.*.parameters.json for the ARM template.", + "type": "array", + "items": { "$ref": "#/definitions/ParametersValueFileInfo" }, + "readOnly": true + }, + "enabled": { + "description": "Whether or not ARM template is enabled for use by lab user.", + "type": "boolean", + "readOnly": true + } + } + }, + "Artifact": { + "description": "An artifact.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/ArtifactProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "ArtifactDeploymentStatusProperties": { + "description": "Properties of an artifact deployment.", + "type": "object", + "properties": { + "deploymentStatus": { + "description": "The deployment status of the artifact.", + "type": "string" + }, + "artifactsApplied": { + "format": "int32", + "description": "The total count of the artifacts that were successfully applied.", + "type": "integer" + }, + "totalArtifacts": { + "format": "int32", + "description": "The total count of the artifacts that were tentatively applied.", + "type": "integer" + } + } + }, + "ArtifactDeploymentStatusPropertiesFragment": { + "description": "Properties of an artifact deployment.", + "type": "object", + "properties": { + "deploymentStatus": { + "description": "The deployment status of the artifact.", + "type": "string" + }, + "artifactsApplied": { + "format": "int32", + "description": "The total count of the artifacts that were successfully applied.", + "type": "integer" + }, + "totalArtifacts": { + "format": "int32", + "description": "The total count of the artifacts that were tentatively applied.", + "type": "integer" + } + } + }, + "ArtifactInstallProperties": { + "description": "Properties of an artifact.", + "type": "object", + "properties": { + "artifactId": { + "description": "The artifact's identifier.", + "type": "string" + }, + "artifactTitle": { + "description": "The artifact's title.", + "type": "string" + }, + "parameters": { + "description": "The parameters of the artifact.", + "type": "array", + "items": { "$ref": "#/definitions/ArtifactParameterProperties" } + }, + "status": { + "description": "The status of the artifact.", + "type": "string" + }, + "deploymentStatusMessage": { + "description": "The status message from the deployment.", + "type": "string" + }, + "vmExtensionStatusMessage": { + "description": "The status message from the virtual machine extension.", + "type": "string" + }, + "installTime": { + "format": "date-time", + "description": "The time that the artifact starts to install on the virtual machine.", + "type": "string" + } + } + }, + "ArtifactInstallPropertiesFragment": { + "description": "Properties of an artifact.", + "type": "object", + "properties": { + "artifactId": { + "description": "The artifact's identifier.", + "type": "string" + }, + "artifactTitle": { + "description": "The artifact's title.", + "type": "string" + }, + "parameters": { + "description": "The parameters of the artifact.", + "type": "array", + "items": { "$ref": "#/definitions/ArtifactParameterPropertiesFragment" } + }, + "status": { + "description": "The status of the artifact.", + "type": "string" + }, + "deploymentStatusMessage": { + "description": "The status message from the deployment.", + "type": "string" + }, + "vmExtensionStatusMessage": { + "description": "The status message from the virtual machine extension.", + "type": "string" + }, + "installTime": { + "format": "date-time", + "description": "The time that the artifact starts to install on the virtual machine.", + "type": "string" + } + } + }, + "ArtifactList": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of the list operation.", + "type": "array", + "items": { "$ref": "#/definitions/Artifact" } + }, + "nextLink": { + "description": "Link for next set of results.", + "type": "string" + } + } + }, + "ArtifactParameterProperties": { + "description": "Properties of an artifact parameter.", + "type": "object", + "properties": { + "name": { + "description": "The name of the artifact parameter.", + "type": "string" + }, + "value": { + "description": "The value of the artifact parameter.", + "type": "string" + } + } + }, + "ArtifactParameterPropertiesFragment": { + "description": "Properties of an artifact parameter.", + "type": "object", + "properties": { + "name": { + "description": "The name of the artifact parameter.", + "type": "string" + }, + "value": { + "description": "The value of the artifact parameter.", + "type": "string" + } + } + }, + "ArtifactProperties": { + "description": "Properties of an artifact.", + "type": "object", + "properties": { + "title": { + "description": "The artifact's title.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The artifact's description.", + "type": "string", + "readOnly": true + }, + "publisher": { + "description": "The artifact's publisher.", + "type": "string", + "readOnly": true + }, + "filePath": { + "description": "The file path to the artifact.", + "type": "string", + "readOnly": true + }, + "icon": { + "description": "The URI to the artifact icon.", + "type": "string", + "readOnly": true + }, + "targetOsType": { + "description": "The artifact's target OS.", + "type": "string", + "readOnly": true + }, + "parameters": { + "description": "The artifact's parameters.", + "type": "object", + "readOnly": true + }, + "createdDate": { + "format": "date-time", + "description": "The artifact's creation date.", + "type": "string", + "readOnly": true + } + } + }, + "ArtifactSource": { + "description": "Properties of an artifact source.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/ArtifactSourceProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "ArtifactSourceFragment": { + "description": "Properties of an artifact source.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/UpdateResource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/ArtifactSourcePropertiesFragment", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "ArtifactSourceList": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of the list operation.", + "type": "array", + "items": { "$ref": "#/definitions/ArtifactSource" } + }, + "nextLink": { + "description": "Link for next set of results.", + "type": "string" + } + } + }, + "ArtifactSourceProperties": { + "description": "Properties of an artifact source.", + "type": "object", + "properties": { + "displayName": { + "description": "The artifact source's display name.", + "type": "string" + }, + "uri": { + "description": "The artifact source's URI.", + "type": "string" + }, + "sourceType": { + "description": "The artifact source's type.", + "enum": [ "VsoGit", "GitHub" ], + "type": "string", + "x-ms-enum": { + "name": "SourceControlType", + "modelAsString": true + } + }, + "folderPath": { + "description": "The folder containing artifacts.", + "type": "string" + }, + "armTemplateFolderPath": { + "description": "The folder containing Azure Resource Manager templates.", + "type": "string" + }, + "branchRef": { + "description": "The artifact source's branch reference.", + "type": "string" + }, + "securityToken": { + "description": "The security token to authenticate to the artifact source.", + "type": "string" + }, + "status": { + "description": "Indicates if the artifact source is enabled (values: Enabled, Disabled).", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "EnableStatus", + "modelAsString": true + } + }, + "createdDate": { + "format": "date-time", + "description": "The artifact source's creation date.", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning status of the resource.", + "type": "string", + "readOnly": true + }, + "uniqueIdentifier": { + "description": "The unique immutable identifier of a resource (Guid).", + "type": "string", + "readOnly": true + } + } + }, + "ArtifactSourcePropertiesFragment": { + "description": "Properties of an artifact source.", + "type": "object", + "properties": { + "displayName": { + "description": "The artifact source's display name.", + "type": "string" + }, + "uri": { + "description": "The artifact source's URI.", + "type": "string" + }, + "sourceType": { + "description": "The artifact source's type.", + "enum": [ "VsoGit", "GitHub" ], + "type": "string", + "x-ms-enum": { + "name": "SourceControlType", + "modelAsString": true + } + }, + "folderPath": { + "description": "The folder containing artifacts.", + "type": "string" + }, + "armTemplateFolderPath": { + "description": "The folder containing Azure Resource Manager templates.", + "type": "string" + }, + "branchRef": { + "description": "The artifact source's branch reference.", + "type": "string" + }, + "securityToken": { + "description": "The security token to authenticate to the artifact source.", + "type": "string" + }, + "status": { + "description": "Indicates if the artifact source is enabled (values: Enabled, Disabled).", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "EnableStatus", + "modelAsString": true + } + } + } + }, + "AttachDiskProperties": { + "description": "Properties of the disk to attach.", + "type": "object", + "properties": { + "leasedByLabVmId": { + "description": "The resource ID of the Lab virtual machine to which the disk is attached.", + "type": "string" + } + } + }, + "AttachNewDataDiskOptions": { + "description": "Properties to attach new disk to the Virtual Machine.", + "type": "object", + "properties": { + "diskSizeGiB": { + "format": "int32", + "description": "Size of the disk to be attached in GibiBytes.", + "type": "integer" + }, + "diskName": { + "description": "The name of the disk to be attached.", + "type": "string" + }, + "diskType": { + "description": "The storage type for the disk (i.e. Standard, Premium).", + "enum": [ "Standard", "Premium" ], + "type": "string", + "x-ms-enum": { + "name": "StorageType", + "modelAsString": true + } + } + } + }, + "AttachNewDataDiskOptionsFragment": { + "description": "Properties to attach new disk to the Virtual Machine.", + "type": "object", + "properties": { + "diskSizeGiB": { + "format": "int32", + "description": "Size of the disk to be attached in GibiBytes.", + "type": "integer" + }, + "diskName": { + "description": "The name of the disk to be attached.", + "type": "string" + }, + "diskType": { + "description": "The storage type for the disk (i.e. Standard, Premium).", + "enum": [ "Standard", "Premium" ], + "type": "string", + "x-ms-enum": { + "name": "StorageType", + "modelAsString": true + } + } + } + }, + "BulkCreationParameters": { + "description": "Parameters for creating multiple virtual machines as a single action.", + "type": "object", + "properties": { + "instanceCount": { + "format": "int32", + "description": "The number of virtual machine instances to create.", + "type": "integer" + } + } + }, + "BulkCreationParametersFragment": { + "description": "Parameters for creating multiple virtual machines as a single action.", + "type": "object", + "properties": { + "instanceCount": { + "format": "int32", + "description": "The number of virtual machine instances to create.", + "type": "integer" + } + } + }, + "CloudError": { + "description": "Error from a REST request.", + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "The cloud error that occurred" + } + }, + "x-ms-external": true + }, + "CloudErrorBody": { + "description": "Body of an error from a REST request.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string" + }, + "message": { + "description": "The error message.", + "type": "string" + }, + "target": { + "description": "The error target.", + "type": "string" + }, + "details": { + "description": "Inner errors.", + "type": "array", + "items": { "$ref": "#/definitions/CloudErrorBody" } + } + }, + "x-ms-external": true + }, + "ComputeDataDisk": { + "description": "A data disks attached to a virtual machine.", + "type": "object", + "properties": { + "name": { + "description": "Gets data disk name.", + "type": "string" + }, + "diskUri": { + "description": "When backed by a blob, the URI of underlying blob.", + "type": "string" + }, + "managedDiskId": { + "description": "When backed by managed disk, this is the ID of the compute disk resource.", + "type": "string" + }, + "diskSizeGiB": { + "format": "int32", + "description": "Gets data disk size in GiB.", + "type": "integer" + } + } + }, + "ComputeDataDiskFragment": { + "description": "A data disks attached to a virtual machine.", + "type": "object", + "properties": { + "name": { + "description": "Gets data disk name.", + "type": "string" + }, + "diskUri": { + "description": "When backed by a blob, the URI of underlying blob.", + "type": "string" + }, + "managedDiskId": { + "description": "When backed by managed disk, this is the ID of the compute disk resource.", + "type": "string" + }, + "diskSizeGiB": { + "format": "int32", + "description": "Gets data disk size in GiB.", + "type": "integer" + } + } + }, + "ComputeVmInstanceViewStatus": { + "description": "Status information about a virtual machine.", + "type": "object", + "properties": { + "code": { + "description": "Gets the status Code.", + "type": "string" + }, + "displayStatus": { + "description": "Gets the short localizable label for the status.", + "type": "string" + }, + "message": { + "description": "Gets the message associated with the status.", + "type": "string" + } + } + }, + "ComputeVmInstanceViewStatusFragment": { + "description": "Status information about a virtual machine.", + "type": "object", + "properties": { + "code": { + "description": "Gets the status Code.", + "type": "string" + }, + "displayStatus": { + "description": "Gets the short localizable label for the status.", + "type": "string" + }, + "message": { + "description": "Gets the message associated with the status.", + "type": "string" + } + } + }, + "ComputeVmProperties": { + "description": "Properties of a virtual machine returned by the Microsoft.Compute API.", + "type": "object", + "properties": { + "statuses": { + "description": "Gets the statuses of the virtual machine.", + "type": "array", + "items": { "$ref": "#/definitions/ComputeVmInstanceViewStatus" } + }, + "osType": { + "description": "Gets the OS type of the virtual machine.", + "type": "string" + }, + "vmSize": { + "description": "Gets the size of the virtual machine.", + "type": "string" + }, + "networkInterfaceId": { + "description": "Gets the network interface ID of the virtual machine.", + "type": "string" + }, + "osDiskId": { + "description": "Gets OS disk blob uri for the virtual machine.", + "type": "string" + }, + "dataDiskIds": { + "description": "Gets data disks blob uri for the virtual machine.", + "type": "array", + "items": { "type": "string" } + }, + "dataDisks": { + "description": "Gets all data disks attached to the virtual machine.", + "type": "array", + "items": { "$ref": "#/definitions/ComputeDataDisk" } + } + } + }, + "ComputeVmPropertiesFragment": { + "description": "Properties of a virtual machine returned by the Microsoft.Compute API.", + "type": "object", + "properties": { + "statuses": { + "description": "Gets the statuses of the virtual machine.", + "type": "array", + "items": { "$ref": "#/definitions/ComputeVmInstanceViewStatusFragment" } + }, + "osType": { + "description": "Gets the OS type of the virtual machine.", + "type": "string" + }, + "vmSize": { + "description": "Gets the size of the virtual machine.", + "type": "string" + }, + "networkInterfaceId": { + "description": "Gets the network interface ID of the virtual machine.", + "type": "string" + }, + "osDiskId": { + "description": "Gets OS disk blob uri for the virtual machine.", + "type": "string" + }, + "dataDiskIds": { + "description": "Gets data disks blob uri for the virtual machine.", + "type": "array", + "items": { "type": "string" } + }, + "dataDisks": { + "description": "Gets all data disks attached to the virtual machine.", + "type": "array", + "items": { "$ref": "#/definitions/ComputeDataDiskFragment" } + } + } + }, + "CostThresholdProperties": { + "description": "Properties of a cost threshold item.", + "type": "object", + "properties": { + "thresholdId": { + "description": "The ID of the cost threshold item.", + "type": "string" + }, + "percentageThreshold": { + "$ref": "#/definitions/PercentageCostThresholdProperties", + "description": "The value of the percentage cost threshold." + }, + "displayOnChart": { + "description": "Indicates whether this threshold will be displayed on cost charts.", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "CostThresholdStatus", + "modelAsString": true + } + }, + "sendNotificationWhenExceeded": { + "description": "Indicates whether notifications will be sent when this threshold is exceeded.", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "CostThresholdStatus", + "modelAsString": true + } + }, + "notificationSent": { + "description": "Indicates the datetime when notifications were last sent for this threshold.", + "type": "string" + } + } + }, + "CustomImage": { + "description": "A custom image.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/CustomImageProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "CustomImageFragment": { + "description": "A custom image.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/UpdateResource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/CustomImagePropertiesFragment", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "CustomImageList": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of the list operation.", + "type": "array", + "items": { "$ref": "#/definitions/CustomImage" } + }, + "nextLink": { + "description": "Link for next set of results.", + "type": "string" + } + } + }, + "CustomImageProperties": { + "description": "Properties of a custom image.", + "type": "object", + "properties": { + "vm": { + "$ref": "#/definitions/CustomImagePropertiesFromVm", + "description": "The virtual machine from which the image is to be created." + }, + "vhd": { + "$ref": "#/definitions/CustomImagePropertiesCustom", + "description": "The VHD from which the image is to be created." + }, + "description": { + "description": "The description of the custom image.", + "type": "string" + }, + "author": { + "description": "The author of the custom image.", + "type": "string" + }, + "creationDate": { + "format": "date-time", + "description": "The creation date of the custom image.", + "type": "string", + "readOnly": true + }, + "managedImageId": { + "description": "The Managed Image Id backing the custom image.", + "type": "string" + }, + "managedSnapshotId": { + "description": "The Managed Snapshot Id backing the custom image.", + "type": "string" + }, + "dataDiskStorageInfo": { + "description": "Storage information about the data disks present in the custom image", + "type": "array", + "items": { "$ref": "#/definitions/DataDiskStorageTypeInfo" } + }, + "customImagePlan": { + "$ref": "#/definitions/CustomImagePropertiesFromPlan", + "description": "Storage information about the plan related to this custom image" + }, + "isPlanAuthorized": { + "description": "Whether or not the custom images underlying offer/plan has been enabled for programmatic deployment", + "type": "boolean" + }, + "provisioningState": { + "description": "The provisioning status of the resource.", + "type": "string", + "readOnly": true + }, + "uniqueIdentifier": { + "description": "The unique immutable identifier of a resource (Guid).", + "type": "string", + "readOnly": true + } + } + }, + "CustomImagePropertiesCustom": { + "description": "Properties for creating a custom image from a VHD.", + "required": [ "osType" ], + "type": "object", + "properties": { + "imageName": { + "description": "The image name.", + "type": "string" + }, + "sysPrep": { + "description": "Indicates whether sysprep has been run on the VHD.", + "type": "boolean" + }, + "osType": { + "description": "The OS type of the custom image (i.e. Windows, Linux)", + "enum": [ "Windows", "Linux", "None" ], + "type": "string", + "x-ms-enum": { + "name": "CustomImageOsType", + "modelAsString": true + } + } + } + }, + "CustomImagePropertiesCustomFragment": { + "description": "Properties for creating a custom image from a VHD.", + "type": "object", + "properties": { + "imageName": { + "description": "The image name.", + "type": "string" + }, + "sysPrep": { + "description": "Indicates whether sysprep has been run on the VHD.", + "type": "boolean" + }, + "osType": { + "description": "The OS type of the custom image (i.e. Windows, Linux)", + "enum": [ "Windows", "Linux", "None" ], + "type": "string", + "x-ms-enum": { + "name": "CustomImageOsType", + "modelAsString": true + } + } + } + }, + "CustomImagePropertiesFragment": { + "description": "Properties of a custom image.", + "type": "object", + "properties": { + "vm": { + "$ref": "#/definitions/CustomImagePropertiesFromVmFragment", + "description": "The virtual machine from which the image is to be created." + }, + "vhd": { + "$ref": "#/definitions/CustomImagePropertiesCustomFragment", + "description": "The VHD from which the image is to be created." + }, + "description": { + "description": "The description of the custom image.", + "type": "string" + }, + "author": { + "description": "The author of the custom image.", + "type": "string" + }, + "managedImageId": { + "description": "The Managed Image Id backing the custom image.", + "type": "string" + }, + "managedSnapshotId": { + "description": "The Managed Snapshot Id backing the custom image.", + "type": "string" + }, + "dataDiskStorageInfo": { + "description": "Storage information about the data disks present in the custom image", + "type": "array", + "items": { "$ref": "#/definitions/DataDiskStorageTypeInfoFragment" } + }, + "customImagePlan": { + "$ref": "#/definitions/CustomImagePropertiesFromPlanFragment", + "description": "Storage information about the plan related to this custom image" + }, + "isPlanAuthorized": { + "description": "Whether or not the custom images underlying offer/plan has been enabled for programmatic deployment", + "type": "boolean" + } + } + }, + "CustomImagePropertiesFromPlan": { + "description": "Properties for plan on a custom image.", + "type": "object", + "properties": { + "id": { + "description": "The id of the plan, equivalent to name of the plan", + "type": "string" + }, + "publisher": { + "description": "The publisher for the plan from the marketplace image the custom image is derived from", + "type": "string" + }, + "offer": { + "description": "The offer for the plan from the marketplace image the custom image is derived from", + "type": "string" + } + } + }, + "CustomImagePropertiesFromPlanFragment": { + "description": "Properties for plan on a custom image.", + "type": "object", + "properties": { + "id": { + "description": "The id of the plan, equivalent to name of the plan", + "type": "string" + }, + "publisher": { + "description": "The publisher for the plan from the marketplace image the custom image is derived from", + "type": "string" + }, + "offer": { + "description": "The offer for the plan from the marketplace image the custom image is derived from", + "type": "string" + } + } + }, + "CustomImagePropertiesFromVm": { + "description": "Properties for creating a custom image from a virtual machine.", + "type": "object", + "properties": { + "sourceVmId": { + "description": "The source vm identifier.", + "type": "string" + }, + "windowsOsInfo": { + "$ref": "#/definitions/WindowsOsInfo", + "description": "The Windows OS information of the VM." + }, + "linuxOsInfo": { + "$ref": "#/definitions/LinuxOsInfo", + "description": "The Linux OS information of the VM." + } + } + }, + "CustomImagePropertiesFromVmFragment": { + "description": "Properties for creating a custom image from a virtual machine.", + "type": "object", + "properties": { + "sourceVmId": { + "description": "The source vm identifier.", + "type": "string" + }, + "windowsOsInfo": { + "$ref": "#/definitions/WindowsOsInfoFragment", + "description": "The Windows OS information of the VM." + }, + "linuxOsInfo": { + "$ref": "#/definitions/LinuxOsInfoFragment", + "description": "The Linux OS information of the VM." + } + } + }, + "DataDiskProperties": { + "description": "Request body for adding a new or existing data disk to a virtual machine.", + "type": "object", + "properties": { + "attachNewDataDiskOptions": { + "$ref": "#/definitions/AttachNewDataDiskOptions", + "description": "Specifies options to attach a new disk to the virtual machine." + }, + "existingLabDiskId": { + "description": "Specifies the existing lab disk id to attach to virtual machine.", + "type": "string" + }, + "hostCaching": { + "description": "Caching option for a data disk (i.e. None, ReadOnly, ReadWrite).", + "enum": [ "None", "ReadOnly", "ReadWrite" ], + "type": "string", + "x-ms-enum": { + "name": "HostCachingOptions", + "modelAsString": true + } + } + } + }, + "DataDiskPropertiesFragment": { + "description": "Request body for adding a new or existing data disk to a virtual machine.", + "type": "object", + "properties": { + "attachNewDataDiskOptions": { + "$ref": "#/definitions/AttachNewDataDiskOptionsFragment", + "description": "Specifies options to attach a new disk to the virtual machine." + }, + "existingLabDiskId": { + "description": "Specifies the existing lab disk id to attach to virtual machine.", + "type": "string" + }, + "hostCaching": { + "description": "Caching option for a data disk (i.e. None, ReadOnly, ReadWrite).", + "enum": [ "None", "ReadOnly", "ReadWrite" ], + "type": "string", + "x-ms-enum": { + "name": "HostCachingOptions", + "modelAsString": true + } + } + } + }, + "DataDiskStorageTypeInfo": { + "description": "Storage information about the data disks present in the custom image", + "type": "object", + "properties": { + "lun": { + "description": "Disk Lun", + "type": "string" + }, + "storageType": { + "description": "Disk Storage Type", + "enum": [ "Standard", "Premium" ], + "type": "string", + "x-ms-enum": { + "name": "StorageType", + "modelAsString": true + } + } + } + }, + "DataDiskStorageTypeInfoFragment": { + "description": "Storage information about the data disks present in the custom image", + "type": "object", + "properties": { + "lun": { + "description": "Disk Lun", + "type": "string" + }, + "storageType": { + "description": "Disk Storage Type", + "enum": [ "Standard", "Premium" ], + "type": "string", + "x-ms-enum": { + "name": "StorageType", + "modelAsString": true + } + } + } + }, + "DayDetails": { + "description": "Properties of a daily schedule.", + "type": "object", + "properties": { + "time": { + "description": "The time of day the schedule will occur.", + "type": "string" + } + } + }, + "DayDetailsFragment": { + "description": "Properties of a daily schedule.", + "type": "object", + "properties": { + "time": { + "description": "The time of day the schedule will occur.", + "type": "string" + } + } + }, + "DetachDataDiskProperties": { + "description": "Request body for detaching data disk from a virtual machine.", + "type": "object", + "properties": { + "existingLabDiskId": { + "description": "Specifies the disk resource ID to detach from virtual machine.", + "type": "string" + } + } + }, + "DetachDiskProperties": { + "description": "Properties of the disk to detach.", + "type": "object", + "properties": { + "leasedByLabVmId": { + "description": "The resource ID of the Lab VM to which the disk is attached.", + "type": "string" + } + } + }, + "Disk": { + "description": "A Disk.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/DiskProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "DiskFragment": { + "description": "A Disk.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/UpdateResource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/DiskPropertiesFragment", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "DiskList": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of the list operation.", + "type": "array", + "items": { "$ref": "#/definitions/Disk" } + }, + "nextLink": { + "description": "Link for next set of results.", + "type": "string" + } + } + }, + "DiskProperties": { + "description": "Properties of a disk.", + "type": "object", + "properties": { + "diskType": { + "description": "The storage type for the disk (i.e. Standard, Premium).", + "enum": [ "Standard", "Premium" ], + "type": "string", + "x-ms-enum": { + "name": "StorageType", + "modelAsString": true + } + }, + "diskSizeGiB": { + "format": "int32", + "description": "The size of the disk in GibiBytes.", + "type": "integer" + }, + "leasedByLabVmId": { + "description": "The resource ID of the VM to which this disk is leased.", + "type": "string" + }, + "diskBlobName": { + "description": "When backed by a blob, the name of the VHD blob without extension.", + "type": "string" + }, + "diskUri": { + "description": "When backed by a blob, the URI of underlying blob.", + "type": "string" + }, + "createdDate": { + "format": "date-time", + "description": "The creation date of the disk.", + "type": "string", + "readOnly": true + }, + "hostCaching": { + "description": "The host caching policy of the disk (i.e. None, ReadOnly, ReadWrite).", + "type": "string" + }, + "managedDiskId": { + "description": "When backed by managed disk, this is the ID of the compute disk resource.", + "type": "string" + }, + "provisioningState": { + "description": "The provisioning status of the resource.", + "type": "string", + "readOnly": true + }, + "uniqueIdentifier": { + "description": "The unique immutable identifier of a resource (Guid).", + "type": "string", + "readOnly": true + } + } + }, + "DiskPropertiesFragment": { + "description": "Properties of a disk.", + "type": "object", + "properties": { + "diskType": { + "description": "The storage type for the disk (i.e. Standard, Premium).", + "enum": [ "Standard", "Premium" ], + "type": "string", + "x-ms-enum": { + "name": "StorageType", + "modelAsString": true + } + }, + "diskSizeGiB": { + "format": "int32", + "description": "The size of the disk in GibiBytes.", + "type": "integer" + }, + "leasedByLabVmId": { + "description": "The resource ID of the VM to which this disk is leased.", + "type": "string" + }, + "diskBlobName": { + "description": "When backed by a blob, the name of the VHD blob without extension.", + "type": "string" + }, + "diskUri": { + "description": "When backed by a blob, the URI of underlying blob.", + "type": "string" + }, + "hostCaching": { + "description": "The host caching policy of the disk (i.e. None, ReadOnly, ReadWrite).", + "type": "string" + }, + "managedDiskId": { + "description": "When backed by managed disk, this is the ID of the compute disk resource.", + "type": "string" + } + } + }, + "DtlEnvironment": { + "description": "An environment, which is essentially an ARM template deployment.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/EnvironmentProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "DtlEnvironmentFragment": { + "description": "An environment, which is essentially an ARM template deployment.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/UpdateResource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/EnvironmentPropertiesFragment", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "DtlEnvironmentList": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of the list operation.", + "type": "array", + "items": { "$ref": "#/definitions/DtlEnvironment" } + }, + "nextLink": { + "description": "Link for next set of results.", + "type": "string" + } + } + }, + "EnvironmentDeploymentProperties": { + "description": "Properties of an environment deployment.", + "type": "object", + "properties": { + "armTemplateId": { + "description": "The Azure Resource Manager template's identifier.", + "type": "string" + }, + "parameters": { + "description": "The parameters of the Azure Resource Manager template.", + "type": "array", + "items": { "$ref": "#/definitions/ArmTemplateParameterProperties" } + } + } + }, + "EnvironmentDeploymentPropertiesFragment": { + "description": "Properties of an environment deployment.", + "type": "object", + "properties": { + "armTemplateId": { + "description": "The Azure Resource Manager template's identifier.", + "type": "string" + }, + "parameters": { + "description": "The parameters of the Azure Resource Manager template.", + "type": "array", + "items": { "$ref": "#/definitions/ArmTemplateParameterPropertiesFragment" } + } + } + }, + "EnvironmentProperties": { + "description": "Properties of an environment.", + "type": "object", + "properties": { + "deploymentProperties": { + "$ref": "#/definitions/EnvironmentDeploymentProperties", + "description": "The deployment properties of the environment." + }, + "armTemplateDisplayName": { + "description": "The display name of the Azure Resource Manager template that produced the environment.", + "type": "string" + }, + "resourceGroupId": { + "description": "The identifier of the resource group containing the environment's resources.", + "type": "string", + "readOnly": true + }, + "createdByUser": { + "description": "The creator of the environment.", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning status of the resource.", + "type": "string", + "readOnly": true + }, + "uniqueIdentifier": { + "description": "The unique immutable identifier of a resource (Guid).", + "type": "string", + "readOnly": true + } + } + }, + "EnvironmentPropertiesFragment": { + "description": "Properties of an environment.", + "type": "object", + "properties": { + "deploymentProperties": { + "$ref": "#/definitions/EnvironmentDeploymentPropertiesFragment", + "description": "The deployment properties of the environment." + }, + "armTemplateDisplayName": { + "description": "The display name of the Azure Resource Manager template that produced the environment.", + "type": "string" + } + } + }, + "EvaluatePoliciesProperties": { + "description": "Properties for evaluating a policy set.", + "type": "object", + "properties": { + "factName": { + "description": "The fact name.", + "type": "string" + }, + "factData": { + "description": "The fact data.", + "type": "string" + }, + "valueOffset": { + "description": "The value offset.", + "type": "string" + }, + "userObjectId": { + "description": "The user for which policies will be evaluated", + "type": "string" + } + } + }, + "EvaluatePoliciesRequest": { + "description": "Request body for evaluating a policy set.", + "type": "object", + "properties": { + "policies": { + "description": "Policies to evaluate.", + "type": "array", + "items": { "$ref": "#/definitions/EvaluatePoliciesProperties" } + } + } + }, + "EvaluatePoliciesResponse": { + "description": "Response body for evaluating a policy set.", + "type": "object", + "properties": { + "results": { + "description": "Results of evaluating a policy set.", + "type": "array", + "items": { "$ref": "#/definitions/PolicySetResult" } + } + } + }, + "Event": { + "description": "An event to be notified for.", + "type": "object", + "properties": { + "eventName": { + "description": "The event type for which this notification is enabled (i.e. AutoShutdown, Cost)", + "enum": [ "AutoShutdown", "Cost" ], + "type": "string", + "x-ms-enum": { + "name": "NotificationChannelEventType", + "modelAsString": true + } + } + } + }, + "EventFragment": { + "description": "An event to be notified for.", + "type": "object", + "properties": { + "eventName": { + "description": "The event type for which this notification is enabled (i.e. AutoShutdown, Cost)", + "enum": [ "AutoShutdown", "Cost" ], + "type": "string", + "x-ms-enum": { + "name": "NotificationChannelEventType", + "modelAsString": true + } + } + } + }, + "ExportResourceUsageParameters": { + "description": "The parameters of the export operation.", + "type": "object", + "properties": { + "blobStorageAbsoluteSasUri": { + "description": "The blob storage absolute sas uri with write permission to the container which the usage data needs to be uploaded to.", + "type": "string" + }, + "usageStartDate": { + "format": "date-time", + "description": "The start time of the usage. If not provided, usage will be reported since the beginning of data collection.", + "type": "string" + } + } + }, + "ExternalSubnet": { + "description": "Subnet information as returned by the Microsoft.Network API.", + "type": "object", + "properties": { + "id": { + "description": "Gets or sets the identifier.", + "type": "string" + }, + "name": { + "description": "Gets or sets the name.", + "type": "string" + } + } + }, + "ExternalSubnetFragment": { + "description": "Subnet information as returned by the Microsoft.Network API.", + "type": "object", + "properties": { + "id": { + "description": "Gets or sets the identifier.", + "type": "string" + }, + "name": { + "description": "Gets or sets the name.", + "type": "string" + } + } + }, + "Formula": { + "description": "A formula for creating a VM, specifying an image base and other parameters", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/FormulaProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "FormulaFragment": { + "description": "A formula for creating a VM, specifying an image base and other parameters", + "type": "object", + "allOf": [ { "$ref": "#/definitions/UpdateResource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/FormulaPropertiesFragment", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "FormulaList": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of the list operation.", + "type": "array", + "items": { "$ref": "#/definitions/Formula" } + }, + "nextLink": { + "description": "Link for next set of results.", + "type": "string" + } + } + }, + "FormulaProperties": { + "description": "Properties of a formula.", + "type": "object", + "properties": { + "description": { + "description": "The description of the formula.", + "type": "string" + }, + "author": { + "description": "The author of the formula.", + "type": "string" + }, + "osType": { + "description": "The OS type of the formula.", + "type": "string" + }, + "creationDate": { + "format": "date-time", + "description": "The creation date of the formula.", + "type": "string", + "readOnly": true + }, + "formulaContent": { + "$ref": "#/definitions/LabVirtualMachineCreationParameter", + "description": "The content of the formula." + }, + "vm": { + "$ref": "#/definitions/FormulaPropertiesFromVm", + "description": "Information about a VM from which a formula is to be created." + }, + "provisioningState": { + "description": "The provisioning status of the resource.", + "type": "string", + "readOnly": true + }, + "uniqueIdentifier": { + "description": "The unique immutable identifier of a resource (Guid).", + "type": "string", + "readOnly": true + } + } + }, + "FormulaPropertiesFragment": { + "description": "Properties of a formula.", + "type": "object", + "properties": { + "description": { + "description": "The description of the formula.", + "type": "string" + }, + "author": { + "description": "The author of the formula.", + "type": "string" + }, + "osType": { + "description": "The OS type of the formula.", + "type": "string" + }, + "formulaContent": { + "$ref": "#/definitions/LabVirtualMachineCreationParameterFragment", + "description": "The content of the formula." + }, + "vm": { + "$ref": "#/definitions/FormulaPropertiesFromVmFragment", + "description": "Information about a VM from which a formula is to be created." + } + } + }, + "FormulaPropertiesFromVm": { + "description": "Information about a VM from which a formula is to be created.", + "type": "object", + "properties": { + "labVmId": { + "description": "The identifier of the VM from which a formula is to be created.", + "type": "string" + } + } + }, + "FormulaPropertiesFromVmFragment": { + "description": "Information about a VM from which a formula is to be created.", + "type": "object", + "properties": { + "labVmId": { + "description": "The identifier of the VM from which a formula is to be created.", + "type": "string" + } + } + }, + "GalleryImage": { + "description": "A gallery image.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/GalleryImageProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "GalleryImageList": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of the list operation.", + "type": "array", + "items": { "$ref": "#/definitions/GalleryImage" } + }, + "nextLink": { + "description": "Link for next set of results.", + "type": "string" + } + } + }, + "GalleryImageProperties": { + "description": "Properties of a gallery image.", + "type": "object", + "properties": { + "author": { + "description": "The author of the gallery image.", + "type": "string" + }, + "createdDate": { + "format": "date-time", + "description": "The creation date of the gallery image.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description of the gallery image.", + "type": "string" + }, + "imageReference": { + "$ref": "#/definitions/GalleryImageReference", + "description": "The image reference of the gallery image." + }, + "icon": { + "description": "The icon of the gallery image.", + "type": "string" + }, + "enabled": { + "description": "Indicates whether this gallery image is enabled.", + "type": "boolean" + }, + "planId": { + "description": "The third party plan that applies to this image", + "type": "string" + }, + "isPlanAuthorized": { + "description": "Indicates if the plan has been authorized for programmatic deployment.", + "type": "boolean" + } + } + }, + "GalleryImageReference": { + "description": "The reference information for an Azure Marketplace image.", + "type": "object", + "properties": { + "offer": { + "description": "The offer of the gallery image.", + "type": "string" + }, + "publisher": { + "description": "The publisher of the gallery image.", + "type": "string" + }, + "sku": { + "description": "The SKU of the gallery image.", + "type": "string" + }, + "osType": { + "description": "The OS type of the gallery image.", + "type": "string" + }, + "version": { + "description": "The version of the gallery image.", + "type": "string" + } + } + }, + "GalleryImageReferenceFragment": { + "description": "The reference information for an Azure Marketplace image.", + "type": "object", + "properties": { + "offer": { + "description": "The offer of the gallery image.", + "type": "string" + }, + "publisher": { + "description": "The publisher of the gallery image.", + "type": "string" + }, + "sku": { + "description": "The SKU of the gallery image.", + "type": "string" + }, + "osType": { + "description": "The OS type of the gallery image.", + "type": "string" + }, + "version": { + "description": "The version of the gallery image.", + "type": "string" + } + } + }, + "GenerateArmTemplateRequest": { + "description": "Parameters for generating an ARM template for deploying artifacts.", + "type": "object", + "properties": { + "virtualMachineName": { + "description": "The resource name of the virtual machine.", + "type": "string" + }, + "parameters": { + "description": "The parameters of the ARM template.", + "type": "array", + "items": { "$ref": "#/definitions/ParameterInfo" } + }, + "location": { + "description": "The location of the virtual machine.", + "type": "string" + }, + "fileUploadOptions": { + "description": "Options for uploading the files for the artifact. UploadFilesAndGenerateSasTokens is the default value.", + "enum": [ "UploadFilesAndGenerateSasTokens", "None" ], + "type": "string", + "x-ms-enum": { + "name": "FileUploadOptions", + "modelAsString": true + } + } + } + }, + "GenerateUploadUriParameter": { + "description": "Properties for generating an upload URI.", + "type": "object", + "properties": { + "blobName": { + "description": "The blob name of the upload URI.", + "type": "string" + } + } + }, + "GenerateUploadUriResponse": { + "description": "Response body for generating an upload URI.", + "type": "object", + "properties": { + "uploadUri": { + "description": "The upload URI for the VHD.", + "type": "string" + } + } + }, + "HourDetails": { + "description": "Properties of an hourly schedule.", + "type": "object", + "properties": { + "minute": { + "format": "int32", + "description": "Minutes of the hour the schedule will run.", + "type": "integer" + } + } + }, + "HourDetailsFragment": { + "description": "Properties of an hourly schedule.", + "type": "object", + "properties": { + "minute": { + "format": "int32", + "description": "Minutes of the hour the schedule will run.", + "type": "integer" + } + } + }, + "IdentityProperties": { + "description": "Properties of a managed identity", + "type": "object", + "properties": { + "type": { + "description": "Managed identity.", + "type": "string" + }, + "principalId": { + "description": "The principal id of resource identity.", + "type": "string" + }, + "tenantId": { + "description": "The tenant identifier of resource.", + "type": "string" + }, + "clientSecretUrl": { + "description": "The client secret URL of the identity.", + "type": "string" + } + } + }, + "ImportLabVirtualMachineRequest": { + "description": "This represents the payload required to import a virtual machine from a different lab into the current one", + "type": "object", + "properties": { + "sourceVirtualMachineResourceId": { + "description": "The full resource ID of the virtual machine to be imported.", + "type": "string" + }, + "destinationVirtualMachineName": { + "description": "The name of the virtual machine in the destination lab", + "type": "string" + } + } + }, + "InboundNatRule": { + "description": "A rule for NAT - exposing a VM's port (backendPort) on the public IP address using a load balancer.", + "type": "object", + "properties": { + "transportProtocol": { + "description": "The transport protocol for the endpoint.", + "enum": [ "Tcp", "Udp" ], + "type": "string", + "x-ms-enum": { + "name": "TransportProtocol", + "modelAsString": true + } + }, + "frontendPort": { + "format": "int32", + "description": "The external endpoint port of the inbound connection. Possible values range between 1 and 65535, inclusive. If unspecified, a value will be allocated automatically.", + "type": "integer" + }, + "backendPort": { + "format": "int32", + "description": "The port to which the external traffic will be redirected.", + "type": "integer" + } + } + }, + "InboundNatRuleFragment": { + "description": "A rule for NAT - exposing a VM's port (backendPort) on the public IP address using a load balancer.", + "type": "object", + "properties": { + "transportProtocol": { + "description": "The transport protocol for the endpoint.", + "enum": [ "Tcp", "Udp" ], + "type": "string", + "x-ms-enum": { + "name": "TransportProtocol", + "modelAsString": true + } + }, + "frontendPort": { + "format": "int32", + "description": "The external endpoint port of the inbound connection. Possible values range between 1 and 65535, inclusive. If unspecified, a value will be allocated automatically.", + "type": "integer" + }, + "backendPort": { + "format": "int32", + "description": "The port to which the external traffic will be redirected.", + "type": "integer" + } + } + }, + "Lab": { + "description": "A lab.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/LabProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "LabAnnouncementProperties": { + "description": "Properties of a lab's announcement banner", + "type": "object", + "properties": { + "title": { + "description": "The plain text title for the lab announcement", + "type": "string" + }, + "markdown": { + "description": "The markdown text (if any) that this lab displays in the UI. If left empty/null, nothing will be shown.", + "type": "string" + }, + "enabled": { + "description": "Is the lab announcement active/enabled at this time?", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "EnableStatus", + "modelAsString": true + } + }, + "expirationDate": { + "format": "date-time", + "description": "The time at which the announcement expires (null for never)", + "type": "string" + }, + "expired": { + "description": "Has this announcement expired?", + "type": "boolean" + }, + "provisioningState": { + "description": "The provisioning status of the resource.", + "type": "string", + "readOnly": true + }, + "uniqueIdentifier": { + "description": "The unique immutable identifier of a resource (Guid).", + "type": "string", + "readOnly": true + } + } + }, + "LabAnnouncementPropertiesFragment": { + "description": "Properties of a lab's announcement banner", + "type": "object", + "properties": { + "title": { + "description": "The plain text title for the lab announcement", + "type": "string" + }, + "markdown": { + "description": "The markdown text (if any) that this lab displays in the UI. If left empty/null, nothing will be shown.", + "type": "string" + }, + "enabled": { + "description": "Is the lab announcement active/enabled at this time?", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "EnableStatus", + "modelAsString": true + } + }, + "expirationDate": { + "format": "date-time", + "description": "The time at which the announcement expires (null for never)", + "type": "string" + }, + "expired": { + "description": "Has this announcement expired?", + "type": "boolean" + } + } + }, + "LabCost": { + "description": "A cost item.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/LabCostProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "LabCostDetailsProperties": { + "description": "The properties of a lab cost item.", + "type": "object", + "properties": { + "date": { + "format": "date-time", + "description": "The date of the cost item.", + "type": "string" + }, + "cost": { + "format": "double", + "description": "The cost component of the cost item.", + "type": "number" + }, + "costType": { + "description": "The type of the cost.", + "enum": [ "Unavailable", "Reported", "Projected" ], + "type": "string", + "x-ms-enum": { + "name": "CostType", + "modelAsString": true + } + } + } + }, + "LabCostProperties": { + "description": "Properties of a cost item.", + "type": "object", + "properties": { + "targetCost": { + "$ref": "#/definitions/TargetCostProperties", + "description": "The target cost properties" + }, + "labCostSummary": { + "$ref": "#/definitions/LabCostSummaryProperties", + "description": "The lab cost summary component of the cost data.", + "readOnly": true + }, + "labCostDetails": { + "description": "The lab cost details component of the cost data.", + "type": "array", + "items": { "$ref": "#/definitions/LabCostDetailsProperties" }, + "readOnly": true + }, + "resourceCosts": { + "description": "The resource cost component of the cost data.", + "type": "array", + "items": { "$ref": "#/definitions/LabResourceCostProperties" }, + "readOnly": true + }, + "currencyCode": { + "description": "The currency code of the cost.", + "type": "string" + }, + "startDateTime": { + "format": "date-time", + "description": "The start time of the cost data.", + "type": "string" + }, + "endDateTime": { + "format": "date-time", + "description": "The end time of the cost data.", + "type": "string" + }, + "createdDate": { + "format": "date-time", + "description": "The creation date of the cost.", + "type": "string" + }, + "provisioningState": { + "description": "The provisioning status of the resource.", + "type": "string", + "readOnly": true + }, + "uniqueIdentifier": { + "description": "The unique immutable identifier of a resource (Guid).", + "type": "string", + "readOnly": true + } + } + }, + "LabCostSummaryProperties": { + "description": "The properties of the cost summary.", + "type": "object", + "properties": { + "estimatedLabCost": { + "format": "double", + "description": "The cost component of the cost item.", + "type": "number" + } + } + }, + "LabFragment": { + "description": "A lab.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/UpdateResource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/LabPropertiesFragment", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "LabList": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of the list operation.", + "type": "array", + "items": { "$ref": "#/definitions/Lab" } + }, + "nextLink": { + "description": "Link for next set of results.", + "type": "string" + } + } + }, + "LabProperties": { + "description": "Properties of a lab.", + "type": "object", + "properties": { + "defaultStorageAccount": { + "description": "The lab's default storage account.", + "type": "string", + "readOnly": true + }, + "defaultPremiumStorageAccount": { + "description": "The lab's default premium storage account.", + "type": "string", + "readOnly": true + }, + "artifactsStorageAccount": { + "description": "The lab's artifact storage account.", + "type": "string", + "readOnly": true + }, + "premiumDataDiskStorageAccount": { + "description": "The lab's premium data disk storage account.", + "type": "string", + "readOnly": true + }, + "vaultName": { + "description": "The lab's Key vault.", + "type": "string", + "readOnly": true + }, + "labStorageType": { + "description": "Type of storage used by the lab. It can be either Premium or Standard. Default is Premium.", + "enum": [ "Standard", "Premium" ], + "type": "string", + "x-ms-enum": { + "name": "StorageType", + "modelAsString": true + } + }, + "mandatoryArtifactsResourceIdsLinux": { + "description": "The ordered list of artifact resource IDs that should be applied on all Linux VM creations by default, prior to the artifacts specified by the user.", + "type": "array", + "items": { "type": "string" } + }, + "mandatoryArtifactsResourceIdsWindows": { + "description": "The ordered list of artifact resource IDs that should be applied on all Windows VM creations by default, prior to the artifacts specified by the user.", + "type": "array", + "items": { "type": "string" } + }, + "createdDate": { + "format": "date-time", + "description": "The creation date of the lab.", + "type": "string", + "readOnly": true + }, + "premiumDataDisks": { + "description": "The setting to enable usage of premium data disks.\r\nWhen its value is 'Enabled', creation of standard or premium data disks is allowed.\r\nWhen its value is 'Disabled', only creation of standard data disks is allowed.", + "enum": [ "Disabled", "Enabled" ], + "type": "string", + "x-ms-enum": { + "name": "PremiumDataDisk", + "modelAsString": true + } + }, + "environmentPermission": { + "description": "The access rights to be granted to the user when provisioning an environment", + "enum": [ "Reader", "Contributor" ], + "type": "string", + "x-ms-enum": { + "name": "EnvironmentPermission", + "modelAsString": true + } + }, + "announcement": { + "$ref": "#/definitions/LabAnnouncementProperties", + "description": "The properties of any lab announcement associated with this lab" + }, + "support": { + "$ref": "#/definitions/LabSupportProperties", + "description": "The properties of any lab support message associated with this lab" + }, + "vmCreationResourceGroup": { + "description": "The resource group in which lab virtual machines will be created in.", + "type": "string", + "readOnly": true + }, + "publicIpId": { + "description": "The public IP address for the lab's load balancer.", + "type": "string", + "readOnly": true + }, + "loadBalancerId": { + "description": "The load balancer used to for lab VMs that use shared IP address.", + "type": "string", + "readOnly": true + }, + "networkSecurityGroupId": { + "description": "The Network Security Group attached to the lab VMs Network interfaces to restrict open ports.", + "type": "string", + "readOnly": true + }, + "extendedProperties": { + "description": "Extended properties of the lab used for experimental features", + "type": "object", + "additionalProperties": { "type": "string" } + }, + "provisioningState": { + "description": "The provisioning status of the resource.", + "type": "string", + "readOnly": true + }, + "uniqueIdentifier": { + "description": "The unique immutable identifier of a resource (Guid).", + "type": "string", + "readOnly": true + } + } + }, + "LabPropertiesFragment": { + "description": "Properties of a lab.", + "type": "object", + "properties": { + "labStorageType": { + "description": "Type of storage used by the lab. It can be either Premium or Standard. Default is Premium.", + "enum": [ "Standard", "Premium" ], + "type": "string", + "x-ms-enum": { + "name": "StorageType", + "modelAsString": true + } + }, + "mandatoryArtifactsResourceIdsLinux": { + "description": "The ordered list of artifact resource IDs that should be applied on all Linux VM creations by default, prior to the artifacts specified by the user.", + "type": "array", + "items": { "type": "string" } + }, + "mandatoryArtifactsResourceIdsWindows": { + "description": "The ordered list of artifact resource IDs that should be applied on all Windows VM creations by default, prior to the artifacts specified by the user.", + "type": "array", + "items": { "type": "string" } + }, + "premiumDataDisks": { + "description": "The setting to enable usage of premium data disks.\r\nWhen its value is 'Enabled', creation of standard or premium data disks is allowed.\r\nWhen its value is 'Disabled', only creation of standard data disks is allowed.", + "enum": [ "Disabled", "Enabled" ], + "type": "string", + "x-ms-enum": { + "name": "PremiumDataDisk", + "modelAsString": true + } + }, + "environmentPermission": { + "description": "The access rights to be granted to the user when provisioning an environment", + "enum": [ "Reader", "Contributor" ], + "type": "string", + "x-ms-enum": { + "name": "EnvironmentPermission", + "modelAsString": true + } + }, + "announcement": { + "$ref": "#/definitions/LabAnnouncementPropertiesFragment", + "description": "The properties of any lab announcement associated with this lab" + }, + "support": { + "$ref": "#/definitions/LabSupportPropertiesFragment", + "description": "The properties of any lab support message associated with this lab" + }, + "extendedProperties": { + "description": "Extended properties of the lab used for experimental features", + "type": "object", + "additionalProperties": { "type": "string" } + } + } + }, + "LabResourceCostProperties": { + "description": "The properties of a resource cost item.", + "type": "object", + "properties": { + "resourcename": { + "description": "The name of the resource.", + "type": "string" + }, + "resourceUId": { + "description": "The unique identifier of the resource.", + "type": "string" + }, + "resourceCost": { + "format": "double", + "description": "The cost component of the resource cost item.", + "type": "number" + }, + "resourceType": { + "description": "The logical resource type (ex. virtualmachine, storageaccount)", + "type": "string" + }, + "resourceOwner": { + "description": "The owner of the resource (ex. janedoe@microsoft.com)", + "type": "string" + }, + "resourcePricingTier": { + "description": "The category of the resource (ex. Premium_LRS, Standard_DS1)", + "type": "string" + }, + "resourceStatus": { + "description": "The status of the resource (ex. Active)", + "type": "string" + }, + "resourceId": { + "description": "The ID of the resource", + "type": "string" + }, + "externalResourceId": { + "description": "The ID of the external resource", + "type": "string" + } + } + }, + "LabSupportProperties": { + "description": "Properties of a lab's support banner", + "type": "object", + "properties": { + "enabled": { + "description": "Is the lab support banner active/enabled at this time?", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "EnableStatus", + "modelAsString": true + } + }, + "markdown": { + "description": "The markdown text (if any) that this lab displays in the UI. If left empty/null, nothing will be shown.", + "type": "string" + } + } + }, + "LabSupportPropertiesFragment": { + "description": "Properties of a lab's support banner", + "type": "object", + "properties": { + "enabled": { + "description": "Is the lab support banner active/enabled at this time?", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "EnableStatus", + "modelAsString": true + } + }, + "markdown": { + "description": "The markdown text (if any) that this lab displays in the UI. If left empty/null, nothing will be shown.", + "type": "string" + } + } + }, + "LabVhd": { + "description": "Properties of a VHD in the lab.", + "type": "object", + "properties": { + "id": { + "description": "The URI to the VHD.", + "type": "string" + } + } + }, + "LabVhdList": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of the list operation.", + "type": "array", + "items": { "$ref": "#/definitions/LabVhd" } + }, + "nextLink": { + "description": "Link for next set of results.", + "type": "string" + } + } + }, + "LabVirtualMachine": { + "description": "A virtual machine.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/LabVirtualMachineProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "LabVirtualMachineCreationParameter": { + "description": "Properties for creating a virtual machine.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/LabVirtualMachineCreationParameterProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + }, + "name": { + "description": "The name of the virtual machine or environment", + "type": "string" + }, + "location": { + "description": "The location of the new virtual machine or environment", + "type": "string" + }, + "tags": { + "description": "The tags of the resource.", + "type": "object", + "additionalProperties": { "type": "string" } + } + } + }, + "LabVirtualMachineCreationParameterFragment": { + "description": "Properties for creating a virtual machine.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/LabVirtualMachineCreationParameterPropertiesFragment", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + }, + "name": { + "description": "The name of the virtual machine or environment", + "type": "string" + }, + "location": { + "description": "The location of the new virtual machine or environment", + "type": "string" + }, + "tags": { + "description": "The tags of the resource.", + "type": "object", + "additionalProperties": { "type": "string" } + } + } + }, + "LabVirtualMachineCreationParameterProperties": { + "description": "Properties for virtual machine creation.", + "type": "object", + "properties": { + "bulkCreationParameters": { + "$ref": "#/definitions/BulkCreationParameters", + "description": "The number of virtual machine instances to create." + }, + "notes": { + "description": "The notes of the virtual machine.", + "type": "string" + }, + "ownerObjectId": { + "description": "The object identifier of the owner of the virtual machine.", + "type": "string" + }, + "ownerUserPrincipalName": { + "description": "The user principal name of the virtual machine owner.", + "type": "string" + }, + "createdByUserId": { + "description": "The object identifier of the creator of the virtual machine.", + "type": "string" + }, + "createdByUser": { + "description": "The email address of creator of the virtual machine.", + "type": "string" + }, + "createdDate": { + "format": "date-time", + "description": "The creation date of the virtual machine.", + "type": "string" + }, + "computeId": { + "description": "The resource identifier (Microsoft.Compute) of the virtual machine.", + "type": "string" + }, + "customImageId": { + "description": "The custom image identifier of the virtual machine.", + "type": "string" + }, + "osType": { + "description": "The OS type of the virtual machine.", + "type": "string" + }, + "size": { + "description": "The size of the virtual machine.", + "type": "string" + }, + "userName": { + "description": "The user name of the virtual machine.", + "type": "string" + }, + "password": { + "description": "The password of the virtual machine administrator.", + "type": "string" + }, + "sshKey": { + "description": "The SSH key of the virtual machine administrator.", + "type": "string" + }, + "isAuthenticationWithSshKey": { + "description": "Indicates whether this virtual machine uses an SSH key for authentication.", + "type": "boolean" + }, + "fqdn": { + "description": "The fully-qualified domain name of the virtual machine.", + "type": "string" + }, + "labSubnetName": { + "description": "The lab subnet name of the virtual machine.", + "type": "string" + }, + "labVirtualNetworkId": { + "description": "The lab virtual network identifier of the virtual machine.", + "type": "string" + }, + "disallowPublicIpAddress": { + "description": "Indicates whether the virtual machine is to be created without a public IP address.", + "type": "boolean" + }, + "artifacts": { + "description": "The artifacts to be installed on the virtual machine.", + "type": "array", + "items": { "$ref": "#/definitions/ArtifactInstallProperties" } + }, + "artifactDeploymentStatus": { + "$ref": "#/definitions/ArtifactDeploymentStatusProperties", + "description": "The artifact deployment status for the virtual machine." + }, + "galleryImageReference": { + "$ref": "#/definitions/GalleryImageReference", + "description": "The Microsoft Azure Marketplace image reference of the virtual machine." + }, + "planId": { + "description": "The id of the plan associated with the virtual machine image", + "type": "string" + }, + "networkInterface": { + "$ref": "#/definitions/NetworkInterfaceProperties", + "description": "The network interface properties." + }, + "expirationDate": { + "format": "date-time", + "description": "The expiration date for VM.", + "type": "string" + }, + "allowClaim": { + "description": "Indicates whether another user can take ownership of the virtual machine", + "type": "boolean" + }, + "storageType": { + "description": "Storage type to use for virtual machine (i.e. Standard, Premium).", + "type": "string" + }, + "virtualMachineCreationSource": { + "description": "Tells source of creation of lab virtual machine. Output property only.", + "enum": [ "FromCustomImage", "FromGalleryImage" ], + "type": "string", + "x-ms-enum": { + "name": "VirtualMachineCreationSource", + "modelAsString": true + } + }, + "environmentId": { + "description": "The resource ID of the environment that contains this virtual machine, if any.", + "type": "string" + }, + "dataDiskParameters": { + "description": "New or existing data disks to attach to the virtual machine after creation", + "type": "array", + "items": { "$ref": "#/definitions/DataDiskProperties" } + }, + "scheduleParameters": { + "description": "Virtual Machine schedules to be created", + "type": "array", + "items": { "$ref": "#/definitions/ScheduleCreationParameter" } + }, + "lastKnownPowerState": { + "description": "Last known compute power state captured in DTL", + "type": "string" + } + } + }, + "LabVirtualMachineCreationParameterPropertiesFragment": { + "description": "Properties for virtual machine creation.", + "type": "object", + "properties": { + "bulkCreationParameters": { + "$ref": "#/definitions/BulkCreationParametersFragment", + "description": "The number of virtual machine instances to create." + }, + "notes": { + "description": "The notes of the virtual machine.", + "type": "string" + }, + "ownerObjectId": { + "description": "The object identifier of the owner of the virtual machine.", + "type": "string" + }, + "ownerUserPrincipalName": { + "description": "The user principal name of the virtual machine owner.", + "type": "string" + }, + "createdByUserId": { + "description": "The object identifier of the creator of the virtual machine.", + "type": "string" + }, + "createdByUser": { + "description": "The email address of creator of the virtual machine.", + "type": "string" + }, + "createdDate": { + "format": "date-time", + "description": "The creation date of the virtual machine.", + "type": "string" + }, + "computeId": { + "description": "The resource identifier (Microsoft.Compute) of the virtual machine.", + "type": "string" + }, + "customImageId": { + "description": "The custom image identifier of the virtual machine.", + "type": "string" + }, + "osType": { + "description": "The OS type of the virtual machine.", + "type": "string" + }, + "size": { + "description": "The size of the virtual machine.", + "type": "string" + }, + "userName": { + "description": "The user name of the virtual machine.", + "type": "string" + }, + "password": { + "description": "The password of the virtual machine administrator.", + "type": "string" + }, + "sshKey": { + "description": "The SSH key of the virtual machine administrator.", + "type": "string" + }, + "isAuthenticationWithSshKey": { + "description": "Indicates whether this virtual machine uses an SSH key for authentication.", + "type": "boolean" + }, + "fqdn": { + "description": "The fully-qualified domain name of the virtual machine.", + "type": "string" + }, + "labSubnetName": { + "description": "The lab subnet name of the virtual machine.", + "type": "string" + }, + "labVirtualNetworkId": { + "description": "The lab virtual network identifier of the virtual machine.", + "type": "string" + }, + "disallowPublicIpAddress": { + "description": "Indicates whether the virtual machine is to be created without a public IP address.", + "type": "boolean" + }, + "artifacts": { + "description": "The artifacts to be installed on the virtual machine.", + "type": "array", + "items": { "$ref": "#/definitions/ArtifactInstallPropertiesFragment" } + }, + "artifactDeploymentStatus": { + "$ref": "#/definitions/ArtifactDeploymentStatusPropertiesFragment", + "description": "The artifact deployment status for the virtual machine." + }, + "galleryImageReference": { + "$ref": "#/definitions/GalleryImageReferenceFragment", + "description": "The Microsoft Azure Marketplace image reference of the virtual machine." + }, + "planId": { + "description": "The id of the plan associated with the virtual machine image", + "type": "string" + }, + "networkInterface": { + "$ref": "#/definitions/NetworkInterfacePropertiesFragment", + "description": "The network interface properties." + }, + "expirationDate": { + "format": "date-time", + "description": "The expiration date for VM.", + "type": "string" + }, + "allowClaim": { + "description": "Indicates whether another user can take ownership of the virtual machine", + "type": "boolean" + }, + "storageType": { + "description": "Storage type to use for virtual machine (i.e. Standard, Premium).", + "type": "string" + }, + "virtualMachineCreationSource": { + "description": "Tells source of creation of lab virtual machine. Output property only.", + "enum": [ "FromCustomImage", "FromGalleryImage" ], + "type": "string", + "x-ms-enum": { + "name": "VirtualMachineCreationSource", + "modelAsString": true + } + }, + "environmentId": { + "description": "The resource ID of the environment that contains this virtual machine, if any.", + "type": "string" + }, + "dataDiskParameters": { + "description": "New or existing data disks to attach to the virtual machine after creation", + "type": "array", + "items": { "$ref": "#/definitions/DataDiskPropertiesFragment" } + }, + "scheduleParameters": { + "description": "Virtual Machine schedules to be created", + "type": "array", + "items": { "$ref": "#/definitions/ScheduleCreationParameterFragment" } + }, + "lastKnownPowerState": { + "description": "Last known compute power state captured in DTL", + "type": "string" + } + } + }, + "LabVirtualMachineFragment": { + "description": "A virtual machine.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/UpdateResource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/LabVirtualMachinePropertiesFragment", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "LabVirtualMachineList": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of the list operation.", + "type": "array", + "items": { "$ref": "#/definitions/LabVirtualMachine" } + }, + "nextLink": { + "description": "Link for next set of results.", + "type": "string" + } + } + }, + "LabVirtualMachineProperties": { + "description": "Properties of a virtual machine.", + "type": "object", + "properties": { + "notes": { + "description": "The notes of the virtual machine.", + "type": "string" + }, + "ownerObjectId": { + "description": "The object identifier of the owner of the virtual machine.", + "type": "string" + }, + "ownerUserPrincipalName": { + "description": "The user principal name of the virtual machine owner.", + "type": "string" + }, + "createdByUserId": { + "description": "The object identifier of the creator of the virtual machine.", + "type": "string" + }, + "createdByUser": { + "description": "The email address of creator of the virtual machine.", + "type": "string" + }, + "createdDate": { + "format": "date-time", + "description": "The creation date of the virtual machine.", + "type": "string" + }, + "computeId": { + "description": "The resource identifier (Microsoft.Compute) of the virtual machine.", + "type": "string" + }, + "customImageId": { + "description": "The custom image identifier of the virtual machine.", + "type": "string" + }, + "osType": { + "description": "The OS type of the virtual machine.", + "type": "string" + }, + "size": { + "description": "The size of the virtual machine.", + "type": "string" + }, + "userName": { + "description": "The user name of the virtual machine.", + "type": "string" + }, + "password": { + "description": "The password of the virtual machine administrator.", + "type": "string" + }, + "sshKey": { + "description": "The SSH key of the virtual machine administrator.", + "type": "string" + }, + "isAuthenticationWithSshKey": { + "description": "Indicates whether this virtual machine uses an SSH key for authentication.", + "type": "boolean" + }, + "fqdn": { + "description": "The fully-qualified domain name of the virtual machine.", + "type": "string" + }, + "labSubnetName": { + "description": "The lab subnet name of the virtual machine.", + "type": "string" + }, + "labVirtualNetworkId": { + "description": "The lab virtual network identifier of the virtual machine.", + "type": "string" + }, + "disallowPublicIpAddress": { + "description": "Indicates whether the virtual machine is to be created without a public IP address.", + "type": "boolean" + }, + "artifacts": { + "description": "The artifacts to be installed on the virtual machine.", + "type": "array", + "items": { "$ref": "#/definitions/ArtifactInstallProperties" } + }, + "artifactDeploymentStatus": { + "$ref": "#/definitions/ArtifactDeploymentStatusProperties", + "description": "The artifact deployment status for the virtual machine." + }, + "galleryImageReference": { + "$ref": "#/definitions/GalleryImageReference", + "description": "The Microsoft Azure Marketplace image reference of the virtual machine." + }, + "planId": { + "description": "The id of the plan associated with the virtual machine image", + "type": "string" + }, + "computeVm": { + "$ref": "#/definitions/ComputeVmProperties", + "description": "The compute virtual machine properties.", + "readOnly": true + }, + "networkInterface": { + "$ref": "#/definitions/NetworkInterfaceProperties", + "description": "The network interface properties." + }, + "applicableSchedule": { + "$ref": "#/definitions/ApplicableSchedule", + "description": "The applicable schedule for the virtual machine.", + "readOnly": true + }, + "expirationDate": { + "format": "date-time", + "description": "The expiration date for VM.", + "type": "string" + }, + "allowClaim": { + "description": "Indicates whether another user can take ownership of the virtual machine", + "type": "boolean" + }, + "storageType": { + "description": "Storage type to use for virtual machine (i.e. Standard, Premium).", + "type": "string" + }, + "virtualMachineCreationSource": { + "description": "Tells source of creation of lab virtual machine. Output property only.", + "enum": [ "FromCustomImage", "FromGalleryImage" ], + "type": "string", + "x-ms-enum": { + "name": "VirtualMachineCreationSource", + "modelAsString": true + } + }, + "environmentId": { + "description": "The resource ID of the environment that contains this virtual machine, if any.", + "type": "string" + }, + "dataDiskParameters": { + "description": "New or existing data disks to attach to the virtual machine after creation", + "type": "array", + "items": { "$ref": "#/definitions/DataDiskProperties" } + }, + "scheduleParameters": { + "description": "Virtual Machine schedules to be created", + "type": "array", + "items": { "$ref": "#/definitions/ScheduleCreationParameter" } + }, + "lastKnownPowerState": { + "description": "Last known compute power state captured in DTL", + "type": "string" + }, + "provisioningState": { + "description": "The provisioning status of the resource.", + "type": "string", + "readOnly": true + }, + "uniqueIdentifier": { + "description": "The unique immutable identifier of a resource (Guid).", + "type": "string", + "readOnly": true + } + } + }, + "LabVirtualMachinePropertiesFragment": { + "description": "Properties of a virtual machine.", + "type": "object", + "properties": { + "notes": { + "description": "The notes of the virtual machine.", + "type": "string" + }, + "ownerObjectId": { + "description": "The object identifier of the owner of the virtual machine.", + "type": "string" + }, + "ownerUserPrincipalName": { + "description": "The user principal name of the virtual machine owner.", + "type": "string" + }, + "createdByUserId": { + "description": "The object identifier of the creator of the virtual machine.", + "type": "string" + }, + "createdByUser": { + "description": "The email address of creator of the virtual machine.", + "type": "string" + }, + "createdDate": { + "format": "date-time", + "description": "The creation date of the virtual machine.", + "type": "string" + }, + "computeId": { + "description": "The resource identifier (Microsoft.Compute) of the virtual machine.", + "type": "string" + }, + "customImageId": { + "description": "The custom image identifier of the virtual machine.", + "type": "string" + }, + "osType": { + "description": "The OS type of the virtual machine.", + "type": "string" + }, + "size": { + "description": "The size of the virtual machine.", + "type": "string" + }, + "userName": { + "description": "The user name of the virtual machine.", + "type": "string" + }, + "password": { + "description": "The password of the virtual machine administrator.", + "type": "string" + }, + "sshKey": { + "description": "The SSH key of the virtual machine administrator.", + "type": "string" + }, + "isAuthenticationWithSshKey": { + "description": "Indicates whether this virtual machine uses an SSH key for authentication.", + "type": "boolean" + }, + "fqdn": { + "description": "The fully-qualified domain name of the virtual machine.", + "type": "string" + }, + "labSubnetName": { + "description": "The lab subnet name of the virtual machine.", + "type": "string" + }, + "labVirtualNetworkId": { + "description": "The lab virtual network identifier of the virtual machine.", + "type": "string" + }, + "disallowPublicIpAddress": { + "description": "Indicates whether the virtual machine is to be created without a public IP address.", + "type": "boolean" + }, + "artifacts": { + "description": "The artifacts to be installed on the virtual machine.", + "type": "array", + "items": { "$ref": "#/definitions/ArtifactInstallPropertiesFragment" } + }, + "artifactDeploymentStatus": { + "$ref": "#/definitions/ArtifactDeploymentStatusPropertiesFragment", + "description": "The artifact deployment status for the virtual machine." + }, + "galleryImageReference": { + "$ref": "#/definitions/GalleryImageReferenceFragment", + "description": "The Microsoft Azure Marketplace image reference of the virtual machine." + }, + "planId": { + "description": "The id of the plan associated with the virtual machine image", + "type": "string" + }, + "networkInterface": { + "$ref": "#/definitions/NetworkInterfacePropertiesFragment", + "description": "The network interface properties." + }, + "expirationDate": { + "format": "date-time", + "description": "The expiration date for VM.", + "type": "string" + }, + "allowClaim": { + "description": "Indicates whether another user can take ownership of the virtual machine", + "type": "boolean" + }, + "storageType": { + "description": "Storage type to use for virtual machine (i.e. Standard, Premium).", + "type": "string" + }, + "virtualMachineCreationSource": { + "description": "Tells source of creation of lab virtual machine. Output property only.", + "enum": [ "FromCustomImage", "FromGalleryImage" ], + "type": "string", + "x-ms-enum": { + "name": "VirtualMachineCreationSource", + "modelAsString": true + } + }, + "environmentId": { + "description": "The resource ID of the environment that contains this virtual machine, if any.", + "type": "string" + }, + "dataDiskParameters": { + "description": "New or existing data disks to attach to the virtual machine after creation", + "type": "array", + "items": { "$ref": "#/definitions/DataDiskPropertiesFragment" } + }, + "scheduleParameters": { + "description": "Virtual Machine schedules to be created", + "type": "array", + "items": { "$ref": "#/definitions/ScheduleCreationParameterFragment" } + }, + "lastKnownPowerState": { + "description": "Last known compute power state captured in DTL", + "type": "string" + } + } + }, + "LinuxOsInfo": { + "description": "Information about a Linux OS.", + "type": "object", + "properties": { + "linuxOsState": { + "description": "The state of the Linux OS (i.e. NonDeprovisioned, DeprovisionRequested, DeprovisionApplied).", + "enum": [ "NonDeprovisioned", "DeprovisionRequested", "DeprovisionApplied" ], + "type": "string", + "x-ms-enum": { + "name": "LinuxOsState", + "modelAsString": true + } + } + } + }, + "LinuxOsInfoFragment": { + "description": "Information about a Linux OS.", + "type": "object", + "properties": { + "linuxOsState": { + "description": "The state of the Linux OS (i.e. NonDeprovisioned, DeprovisionRequested, DeprovisionApplied).", + "enum": [ "NonDeprovisioned", "DeprovisionRequested", "DeprovisionApplied" ], + "type": "string", + "x-ms-enum": { + "name": "LinuxOsState", + "modelAsString": true + } + } + } + }, + "NetworkInterfaceProperties": { + "description": "Properties of a network interface.", + "type": "object", + "properties": { + "virtualNetworkId": { + "description": "The resource ID of the virtual network.", + "type": "string" + }, + "subnetId": { + "description": "The resource ID of the sub net.", + "type": "string" + }, + "publicIpAddressId": { + "description": "The resource ID of the public IP address.", + "type": "string" + }, + "publicIpAddress": { + "description": "The public IP address.", + "type": "string" + }, + "privateIpAddress": { + "description": "The private IP address.", + "type": "string" + }, + "dnsName": { + "description": "The DNS name.", + "type": "string" + }, + "rdpAuthority": { + "description": "The RdpAuthority property is a server DNS host name or IP address followed by the service port number for RDP (Remote Desktop Protocol).", + "type": "string" + }, + "sshAuthority": { + "description": "The SshAuthority property is a server DNS host name or IP address followed by the service port number for SSH.", + "type": "string" + }, + "sharedPublicIpAddressConfiguration": { + "$ref": "#/definitions/SharedPublicIpAddressConfiguration", + "description": "The configuration for sharing a public IP address across multiple virtual machines." + } + } + }, + "NetworkInterfacePropertiesFragment": { + "description": "Properties of a network interface.", + "type": "object", + "properties": { + "virtualNetworkId": { + "description": "The resource ID of the virtual network.", + "type": "string" + }, + "subnetId": { + "description": "The resource ID of the sub net.", + "type": "string" + }, + "publicIpAddressId": { + "description": "The resource ID of the public IP address.", + "type": "string" + }, + "publicIpAddress": { + "description": "The public IP address.", + "type": "string" + }, + "privateIpAddress": { + "description": "The private IP address.", + "type": "string" + }, + "dnsName": { + "description": "The DNS name.", + "type": "string" + }, + "rdpAuthority": { + "description": "The RdpAuthority property is a server DNS host name or IP address followed by the service port number for RDP (Remote Desktop Protocol).", + "type": "string" + }, + "sshAuthority": { + "description": "The SshAuthority property is a server DNS host name or IP address followed by the service port number for SSH.", + "type": "string" + }, + "sharedPublicIpAddressConfiguration": { + "$ref": "#/definitions/SharedPublicIpAddressConfigurationFragment", + "description": "The configuration for sharing a public IP address across multiple virtual machines." + } + } + }, + "NotificationChannel": { + "description": "A notification.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/NotificationChannelProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "NotificationChannelFragment": { + "description": "A notification.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/UpdateResource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/NotificationChannelPropertiesFragment", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "NotificationChannelList": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of the list operation.", + "type": "array", + "items": { "$ref": "#/definitions/NotificationChannel" } + }, + "nextLink": { + "description": "Link for next set of results.", + "type": "string" + } + } + }, + "NotificationChannelProperties": { + "description": "Properties of a schedule.", + "type": "object", + "properties": { + "webHookUrl": { + "description": "The webhook URL to send notifications to.", + "type": "string" + }, + "emailRecipient": { + "description": "The email recipient to send notifications to (can be a list of semi-colon separated email addresses).", + "type": "string" + }, + "notificationLocale": { + "description": "The locale to use when sending a notification (fallback for unsupported languages is EN).", + "type": "string" + }, + "description": { + "description": "Description of notification.", + "type": "string" + }, + "events": { + "description": "The list of event for which this notification is enabled.", + "type": "array", + "items": { "$ref": "#/definitions/Event" } + }, + "createdDate": { + "format": "date-time", + "description": "The creation date of the notification channel.", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning status of the resource.", + "type": "string", + "readOnly": true + }, + "uniqueIdentifier": { + "description": "The unique immutable identifier of a resource (Guid).", + "type": "string", + "readOnly": true + } + } + }, + "NotificationChannelPropertiesFragment": { + "description": "Properties of a schedule.", + "type": "object", + "properties": { + "webHookUrl": { + "description": "The webhook URL to send notifications to.", + "type": "string" + }, + "emailRecipient": { + "description": "The email recipient to send notifications to (can be a list of semi-colon separated email addresses).", + "type": "string" + }, + "notificationLocale": { + "description": "The locale to use when sending a notification (fallback for unsupported languages is EN).", + "type": "string" + }, + "description": { + "description": "Description of notification.", + "type": "string" + }, + "events": { + "description": "The list of event for which this notification is enabled.", + "type": "array", + "items": { "$ref": "#/definitions/EventFragment" } + } + } + }, + "NotificationSettings": { + "description": "Notification settings for a schedule.", + "type": "object", + "properties": { + "status": { + "description": "If notifications are enabled for this schedule (i.e. Enabled, Disabled).", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "EnableStatus", + "modelAsString": true + } + }, + "timeInMinutes": { + "format": "int32", + "description": "Time in minutes before event at which notification will be sent.", + "type": "integer" + }, + "webhookUrl": { + "description": "The webhook URL to which the notification will be sent.", + "type": "string" + }, + "emailRecipient": { + "description": "The email recipient to send notifications to (can be a list of semi-colon separated email addresses).", + "type": "string" + }, + "notificationLocale": { + "description": "The locale to use when sending a notification (fallback for unsupported languages is EN).", + "type": "string" + } + } + }, + "NotificationSettingsFragment": { + "description": "Notification settings for a schedule.", + "type": "object", + "properties": { + "status": { + "description": "If notifications are enabled for this schedule (i.e. Enabled, Disabled).", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "EnableStatus", + "modelAsString": true + } + }, + "timeInMinutes": { + "format": "int32", + "description": "Time in minutes before event at which notification will be sent.", + "type": "integer" + }, + "webhookUrl": { + "description": "The webhook URL to which the notification will be sent.", + "type": "string" + }, + "emailRecipient": { + "description": "The email recipient to send notifications to (can be a list of semi-colon separated email addresses).", + "type": "string" + }, + "notificationLocale": { + "description": "The locale to use when sending a notification (fallback for unsupported languages is EN).", + "type": "string" + } + } + }, + "NotifyParameters": { + "description": "Properties for generating a Notification.", + "type": "object", + "properties": { + "eventName": { + "description": "The type of event (i.e. AutoShutdown, Cost)", + "enum": [ "AutoShutdown", "Cost" ], + "type": "string", + "x-ms-enum": { + "name": "NotificationChannelEventType", + "modelAsString": true + } + }, + "jsonPayload": { + "description": "Properties for the notification in json format.", + "type": "string" + } + } + }, + "OperationError": { + "description": "Error details for the operation in case of a failure.", + "type": "object", + "properties": { + "code": { + "description": "The error code of the operation error.", + "type": "string" + }, + "message": { + "description": "The error message of the operation error.", + "type": "string" + } + } + }, + "OperationMetadata": { + "description": "The REST API operation supported by DevTestLab ResourceProvider.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "$ref": "#/definitions/OperationMetadataDisplay", + "description": "The object that describes the operations" + } + } + }, + "OperationMetadataDisplay": { + "description": "The object that describes the operations", + "type": "object", + "properties": { + "provider": { + "description": "Friendly name of the resource provider", + "type": "string" + }, + "resource": { + "description": "Resource type on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Operation type: read, write, delete, listKeys/action, etc.", + "type": "string" + }, + "description": { + "description": "Friendly name of the operation", + "type": "string" + } + } + }, + "OperationResult": { + "description": "An Operation Result", + "type": "object", + "properties": { + "status": { + "description": "The operation status.", + "type": "string" + }, + "statusCode": { + "description": "The status code for the operation.", + "enum": [ "Continue", "SwitchingProtocols", "OK", "Created", "Accepted", "NonAuthoritativeInformation", "NoContent", "ResetContent", "PartialContent", "MultipleChoices", "MovedPermanently", "Redirect", "SeeOther", "NotModified", "UseProxy", "Unused", "TemporaryRedirect", "BadRequest", "Unauthorized", "PaymentRequired", "Forbidden", "NotFound", "MethodNotAllowed", "NotAcceptable", "ProxyAuthenticationRequired", "RequestTimeout", "Conflict", "Gone", "LengthRequired", "PreconditionFailed", "RequestEntityTooLarge", "RequestUriTooLong", "UnsupportedMediaType", "RequestedRangeNotSatisfiable", "ExpectationFailed", "UpgradeRequired", "InternalServerError", "NotImplemented", "BadGateway", "ServiceUnavailable", "GatewayTimeout", "HttpVersionNotSupported" ], + "type": "string", + "x-ms-enum": { + "name": "HttpStatusCode", + "modelAsString": true + } + }, + "error": { + "$ref": "#/definitions/OperationError", + "description": "Error details for the operation in case of a failure." + } + } + }, + "ParameterInfo": { + "description": "Information about an artifact's parameter.", + "type": "object", + "properties": { + "name": { + "description": "The name of the artifact parameter.", + "type": "string" + }, + "value": { + "description": "The value of the artifact parameter.", + "type": "string" + } + } + }, + "ParametersValueFileInfo": { + "description": "A file containing a set of parameter values for an ARM template.", + "type": "object", + "properties": { + "fileName": { + "description": "File name.", + "type": "string" + }, + "parametersValueInfo": { + "description": "Contents of the file.", + "type": "object" + } + } + }, + "PercentageCostThresholdProperties": { + "description": "Properties of a percentage cost threshold.", + "type": "object", + "properties": { + "thresholdValue": { + "format": "double", + "description": "The cost threshold value.", + "type": "number" + } + } + }, + "Policy": { + "description": "A Policy.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/PolicyProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "PolicyFragment": { + "description": "A Policy.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/UpdateResource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/PolicyPropertiesFragment", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "PolicyList": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of the list operation.", + "type": "array", + "items": { "$ref": "#/definitions/Policy" } + }, + "nextLink": { + "description": "Link for next set of results.", + "type": "string" + } + } + }, + "PolicyProperties": { + "description": "Properties of a Policy.", + "type": "object", + "properties": { + "description": { + "description": "The description of the policy.", + "type": "string" + }, + "status": { + "description": "The status of the policy.", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "PolicyStatus", + "modelAsString": true + } + }, + "factName": { + "description": "The fact name of the policy (e.g. LabVmCount, LabVmSize, MaxVmsAllowedPerLab, etc.", + "enum": [ "UserOwnedLabVmCount", "UserOwnedLabPremiumVmCount", "LabVmCount", "LabPremiumVmCount", "LabVmSize", "GalleryImage", "UserOwnedLabVmCountInSubnet", "LabTargetCost", "EnvironmentTemplate", "ScheduleEditPermission" ], + "type": "string", + "x-ms-enum": { + "name": "PolicyFactName", + "modelAsString": true + } + }, + "factData": { + "description": "The fact data of the policy.", + "type": "string" + }, + "threshold": { + "description": "The threshold of the policy (i.e. a number for MaxValuePolicy, and a JSON array of values for AllowedValuesPolicy).", + "type": "string" + }, + "evaluatorType": { + "description": "The evaluator type of the policy (i.e. AllowedValuesPolicy, MaxValuePolicy).", + "enum": [ "AllowedValuesPolicy", "MaxValuePolicy" ], + "type": "string", + "x-ms-enum": { + "name": "PolicyEvaluatorType", + "modelAsString": true + } + }, + "createdDate": { + "format": "date-time", + "description": "The creation date of the policy.", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning status of the resource.", + "type": "string", + "readOnly": true + }, + "uniqueIdentifier": { + "description": "The unique immutable identifier of a resource (Guid).", + "type": "string", + "readOnly": true + } + } + }, + "PolicyPropertiesFragment": { + "description": "Properties of a Policy.", + "type": "object", + "properties": { + "description": { + "description": "The description of the policy.", + "type": "string" + }, + "status": { + "description": "The status of the policy.", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "PolicyStatus", + "modelAsString": true + } + }, + "factName": { + "description": "The fact name of the policy (e.g. LabVmCount, LabVmSize, MaxVmsAllowedPerLab, etc.", + "enum": [ "UserOwnedLabVmCount", "UserOwnedLabPremiumVmCount", "LabVmCount", "LabPremiumVmCount", "LabVmSize", "GalleryImage", "UserOwnedLabVmCountInSubnet", "LabTargetCost", "EnvironmentTemplate", "ScheduleEditPermission" ], + "type": "string", + "x-ms-enum": { + "name": "PolicyFactName", + "modelAsString": true + } + }, + "factData": { + "description": "The fact data of the policy.", + "type": "string" + }, + "threshold": { + "description": "The threshold of the policy (i.e. a number for MaxValuePolicy, and a JSON array of values for AllowedValuesPolicy).", + "type": "string" + }, + "evaluatorType": { + "description": "The evaluator type of the policy (i.e. AllowedValuesPolicy, MaxValuePolicy).", + "enum": [ "AllowedValuesPolicy", "MaxValuePolicy" ], + "type": "string", + "x-ms-enum": { + "name": "PolicyEvaluatorType", + "modelAsString": true + } + } + } + }, + "PolicySetResult": { + "description": "Result of a policy set evaluation.", + "type": "object", + "properties": { + "hasError": { + "description": "A value indicating whether this policy set evaluation has discovered violations.", + "type": "boolean" + }, + "policyViolations": { + "description": "The list of policy violations.", + "type": "array", + "items": { "$ref": "#/definitions/PolicyViolation" } + } + } + }, + "PolicyViolation": { + "description": "Policy violation.", + "type": "object", + "properties": { + "code": { + "description": "The code of the policy violation.", + "type": "string" + }, + "message": { + "description": "The message of the policy violation.", + "type": "string" + } + } + }, + "Port": { + "description": "Properties of a network port.", + "type": "object", + "properties": { + "transportProtocol": { + "description": "Protocol type of the port.", + "enum": [ "Tcp", "Udp" ], + "type": "string", + "x-ms-enum": { + "name": "TransportProtocol", + "modelAsString": true + } + }, + "backendPort": { + "format": "int32", + "description": "Backend port of the target virtual machine.", + "type": "integer" + } + } + }, + "PortFragment": { + "description": "Properties of a network port.", + "type": "object", + "properties": { + "transportProtocol": { + "description": "Protocol type of the port.", + "enum": [ "Tcp", "Udp" ], + "type": "string", + "x-ms-enum": { + "name": "TransportProtocol", + "modelAsString": true + } + }, + "backendPort": { + "format": "int32", + "description": "Backend port of the target virtual machine.", + "type": "integer" + } + } + }, + "ProviderOperationResult": { + "description": "Result of the request to list REST API operations", + "type": "object", + "properties": { + "value": { + "description": "List of operations supported by the resource provider.", + "type": "array", + "items": { "$ref": "#/definitions/OperationMetadata" } + }, + "nextLink": { + "description": "URL to get the next set of operation list results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "RdpConnection": { + "description": "Represents a .rdp file", + "type": "object", + "properties": { + "contents": { + "description": "The contents of the .rdp file", + "type": "string" + } + } + }, + "ResizeLabVirtualMachineProperties": { + "description": "Request body for resizing a virtual machine.", + "type": "object", + "properties": { + "size": { + "description": "Specifies the size of the virtual machine.", + "type": "string" + } + } + }, + "Resource": { + "description": "An Azure resource.", + "type": "object", + "properties": { + "id": { + "description": "The identifier of the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "The location of the resource.", + "type": "string" + }, + "tags": { + "description": "The tags of the resource.", + "type": "object", + "additionalProperties": { "type": "string" } + } + }, + "x-ms-azure-resource": true + }, + "RetargetScheduleProperties": { + "description": "Properties for retargeting a virtual machine schedule.", + "type": "object", + "properties": { + "currentResourceId": { + "description": "The resource Id of the virtual machine on which the schedule operates", + "type": "string" + }, + "targetResourceId": { + "description": "The resource Id of the virtual machine that the schedule should be retargeted to", + "type": "string" + } + } + }, + "Schedule": { + "description": "A schedule.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/ScheduleProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "ScheduleCreationParameter": { + "description": "Properties for creating a schedule.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ScheduleCreationParameterProperties", + "description": "The properties of the schedule.", + "x-ms-client-flatten": true + }, + "name": { + "description": "The name of the virtual machine or environment", + "type": "string" + }, + "location": { + "description": "The location of the new virtual machine or environment", + "type": "string" + }, + "tags": { + "description": "The tags of the resource.", + "type": "object", + "additionalProperties": { "type": "string" } + } + } + }, + "ScheduleCreationParameterFragment": { + "description": "Properties for creating a schedule.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ScheduleCreationParameterPropertiesFragment", + "description": "The properties of the schedule.", + "x-ms-client-flatten": true + }, + "name": { + "description": "The name of the virtual machine or environment", + "type": "string" + }, + "location": { + "description": "The location of the new virtual machine or environment", + "type": "string" + }, + "tags": { + "description": "The tags of the resource.", + "type": "object", + "additionalProperties": { "type": "string" } + } + } + }, + "ScheduleCreationParameterProperties": { + "description": "Properties for schedule creation.", + "type": "object", + "properties": { + "status": { + "description": "The status of the schedule (i.e. Enabled, Disabled)", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "EnableStatus", + "modelAsString": true + } + }, + "taskType": { + "description": "The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart).", + "type": "string" + }, + "weeklyRecurrence": { + "$ref": "#/definitions/WeekDetails", + "description": "If the schedule will occur only some days of the week, specify the weekly recurrence." + }, + "dailyRecurrence": { + "$ref": "#/definitions/DayDetails", + "description": "If the schedule will occur once each day of the week, specify the daily recurrence." + }, + "hourlyRecurrence": { + "$ref": "#/definitions/HourDetails", + "description": "If the schedule will occur multiple times a day, specify the hourly recurrence." + }, + "timeZoneId": { + "description": "The time zone ID (e.g. Pacific Standard time).", + "type": "string" + }, + "notificationSettings": { + "$ref": "#/definitions/NotificationSettings", + "description": "Notification settings." + }, + "targetResourceId": { + "description": "The resource ID to which the schedule belongs", + "type": "string" + } + } + }, + "ScheduleCreationParameterPropertiesFragment": { + "description": "Properties for schedule creation.", + "type": "object", + "properties": { + "status": { + "description": "The status of the schedule (i.e. Enabled, Disabled)", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "EnableStatus", + "modelAsString": true + } + }, + "taskType": { + "description": "The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart).", + "type": "string" + }, + "weeklyRecurrence": { + "$ref": "#/definitions/WeekDetailsFragment", + "description": "If the schedule will occur only some days of the week, specify the weekly recurrence." + }, + "dailyRecurrence": { + "$ref": "#/definitions/DayDetailsFragment", + "description": "If the schedule will occur once each day of the week, specify the daily recurrence." + }, + "hourlyRecurrence": { + "$ref": "#/definitions/HourDetailsFragment", + "description": "If the schedule will occur multiple times a day, specify the hourly recurrence." + }, + "timeZoneId": { + "description": "The time zone ID (e.g. Pacific Standard time).", + "type": "string" + }, + "notificationSettings": { + "$ref": "#/definitions/NotificationSettingsFragment", + "description": "Notification settings." + }, + "targetResourceId": { + "description": "The resource ID to which the schedule belongs", + "type": "string" + } + } + }, + "ScheduleFragment": { + "description": "A schedule.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/UpdateResource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/SchedulePropertiesFragment", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "ScheduleList": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of the list operation.", + "type": "array", + "items": { "$ref": "#/definitions/Schedule" } + }, + "nextLink": { + "description": "Link for next set of results.", + "type": "string" + } + } + }, + "ScheduleProperties": { + "description": "Properties of a schedule.", + "type": "object", + "properties": { + "status": { + "description": "The status of the schedule (i.e. Enabled, Disabled)", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "EnableStatus", + "modelAsString": true + } + }, + "taskType": { + "description": "The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart).", + "type": "string" + }, + "weeklyRecurrence": { + "$ref": "#/definitions/WeekDetails", + "description": "If the schedule will occur only some days of the week, specify the weekly recurrence." + }, + "dailyRecurrence": { + "$ref": "#/definitions/DayDetails", + "description": "If the schedule will occur once each day of the week, specify the daily recurrence." + }, + "hourlyRecurrence": { + "$ref": "#/definitions/HourDetails", + "description": "If the schedule will occur multiple times a day, specify the hourly recurrence." + }, + "timeZoneId": { + "description": "The time zone ID (e.g. Pacific Standard time).", + "type": "string" + }, + "notificationSettings": { + "$ref": "#/definitions/NotificationSettings", + "description": "Notification settings." + }, + "createdDate": { + "format": "date-time", + "description": "The creation date of the schedule.", + "type": "string", + "readOnly": true + }, + "targetResourceId": { + "description": "The resource ID to which the schedule belongs", + "type": "string" + }, + "provisioningState": { + "description": "The provisioning status of the resource.", + "type": "string", + "readOnly": true + }, + "uniqueIdentifier": { + "description": "The unique immutable identifier of a resource (Guid).", + "type": "string", + "readOnly": true + } + } + }, + "SchedulePropertiesFragment": { + "description": "Properties of a schedule.", + "type": "object", + "properties": { + "status": { + "description": "The status of the schedule (i.e. Enabled, Disabled)", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "EnableStatus", + "modelAsString": true + } + }, + "taskType": { + "description": "The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart).", + "type": "string" + }, + "weeklyRecurrence": { + "$ref": "#/definitions/WeekDetailsFragment", + "description": "If the schedule will occur only some days of the week, specify the weekly recurrence." + }, + "dailyRecurrence": { + "$ref": "#/definitions/DayDetailsFragment", + "description": "If the schedule will occur once each day of the week, specify the daily recurrence." + }, + "hourlyRecurrence": { + "$ref": "#/definitions/HourDetailsFragment", + "description": "If the schedule will occur multiple times a day, specify the hourly recurrence." + }, + "timeZoneId": { + "description": "The time zone ID (e.g. Pacific Standard time).", + "type": "string" + }, + "notificationSettings": { + "$ref": "#/definitions/NotificationSettingsFragment", + "description": "Notification settings." + }, + "targetResourceId": { + "description": "The resource ID to which the schedule belongs", + "type": "string" + } + } + }, + "Secret": { + "description": "A secret.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/SecretProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "SecretFragment": { + "description": "A secret.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/UpdateResource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/SecretPropertiesFragment", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "SecretList": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of the list operation.", + "type": "array", + "items": { "$ref": "#/definitions/Secret" } + }, + "nextLink": { + "description": "Link for next set of results.", + "type": "string" + } + } + }, + "SecretProperties": { + "description": "Properties of a secret.", + "type": "object", + "properties": { + "value": { + "description": "The value of the secret for secret creation.", + "type": "string" + }, + "provisioningState": { + "description": "The provisioning status of the resource.", + "type": "string", + "readOnly": true + }, + "uniqueIdentifier": { + "description": "The unique immutable identifier of a resource (Guid).", + "type": "string", + "readOnly": true + } + } + }, + "SecretPropertiesFragment": { + "description": "Properties of a secret.", + "type": "object", + "properties": { + "value": { + "description": "The value of the secret for secret creation.", + "type": "string" + } + } + }, + "ServiceFabric": { + "description": "A Service Fabric.", + "required": [ "properties" ], + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/ServiceFabricProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "ServiceFabricFragment": { + "description": "A Service Fabric.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/UpdateResource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/ServiceFabricPropertiesFragment", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "ServiceFabricList": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of the list operation.", + "type": "array", + "items": { "$ref": "#/definitions/ServiceFabric" } + }, + "nextLink": { + "description": "Link for next set of results.", + "type": "string" + } + } + }, + "ServiceFabricProperties": { + "description": "Properties of a service fabric.", + "type": "object", + "properties": { + "externalServiceFabricId": { + "description": "The backing service fabric resource's id", + "type": "string" + }, + "environmentId": { + "description": "The resource id of the environment under which the service fabric resource is present", + "type": "string" + }, + "applicableSchedule": { + "$ref": "#/definitions/ApplicableSchedule", + "description": "The applicable schedule for the virtual machine.", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning status of the resource.", + "type": "string", + "readOnly": true + }, + "uniqueIdentifier": { + "description": "The unique immutable identifier of a resource (Guid).", + "type": "string", + "readOnly": true + } + } + }, + "ServiceFabricPropertiesFragment": { + "description": "Properties of a service fabric.", + "type": "object", + "properties": { + "externalServiceFabricId": { + "description": "The backing service fabric resource's id", + "type": "string" + }, + "environmentId": { + "description": "The resource id of the environment under which the service fabric resource is present", + "type": "string" + } + } + }, + "ServiceRunner": { + "description": "A container for a managed identity to execute DevTest lab services.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "identity": { + "$ref": "#/definitions/IdentityProperties", + "description": "The identity of the resource." + } + } + }, + "ServiceRunnerList": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of the list operation.", + "type": "array", + "items": { "$ref": "#/definitions/ServiceRunner" } + }, + "nextLink": { + "description": "Link for next set of results.", + "type": "string" + } + } + }, + "SharedPublicIpAddressConfiguration": { + "description": "Properties of a virtual machine that determine how it is connected to a load balancer.", + "type": "object", + "properties": { + "inboundNatRules": { + "description": "The incoming NAT rules", + "type": "array", + "items": { "$ref": "#/definitions/InboundNatRule" } + } + } + }, + "SharedPublicIpAddressConfigurationFragment": { + "description": "Properties of a virtual machine that determine how it is connected to a load balancer.", + "type": "object", + "properties": { + "inboundNatRules": { + "description": "The incoming NAT rules", + "type": "array", + "items": { "$ref": "#/definitions/InboundNatRuleFragment" } + } + } + }, + "ShutdownNotificationContent": { + "description": "The contents of a shutdown notification. Webhooks can use this type to deserialize the request body when they get notified of an imminent shutdown.", + "type": "object", + "properties": { + "skipUrl": { + "description": "The URL to skip auto-shutdown.", + "type": "string" + }, + "delayUrl60": { + "description": "The URL to delay shutdown by 60 minutes.", + "type": "string" + }, + "delayUrl120": { + "description": "The URL to delay shutdown by 2 hours.", + "type": "string" + }, + "vmName": { + "description": "The virtual machine to be shut down.", + "type": "string" + }, + "guid": { + "description": "The GUID for the virtual machine to be shut down.", + "type": "string" + }, + "owner": { + "description": "The owner of the virtual machine.", + "type": "string" + }, + "vmUrl": { + "description": "The URL of the virtual machine.", + "type": "string" + }, + "minutesUntilShutdown": { + "description": "Minutes remaining until shutdown", + "type": "string" + }, + "eventType": { + "description": "The event for which a notification will be sent.", + "type": "string" + }, + "text": { + "description": "The text for the notification.", + "type": "string" + }, + "subscriptionId": { + "description": "The subscription ID for the schedule.", + "type": "string" + }, + "resourceGroupName": { + "description": "The resource group name for the schedule.", + "type": "string" + }, + "labName": { + "description": "The lab for the schedule.", + "type": "string" + } + } + }, + "Subnet": { + "description": "Subnet information.", + "type": "object", + "properties": { + "resourceId": { + "description": "The resource ID of the subnet.", + "type": "string" + }, + "labSubnetName": { + "description": "The name of the subnet as seen in the lab.", + "type": "string" + }, + "allowPublicIp": { + "description": "The permission policy of the subnet for allowing public IP addresses (i.e. Allow, Deny)).", + "enum": [ "Default", "Deny", "Allow" ], + "type": "string", + "x-ms-enum": { + "name": "UsagePermissionType", + "modelAsString": true + } + } + } + }, + "SubnetFragment": { + "description": "Subnet information.", + "type": "object", + "properties": { + "resourceId": { + "description": "The resource ID of the subnet.", + "type": "string" + }, + "labSubnetName": { + "description": "The name of the subnet as seen in the lab.", + "type": "string" + }, + "allowPublicIp": { + "description": "The permission policy of the subnet for allowing public IP addresses (i.e. Allow, Deny)).", + "enum": [ "Default", "Deny", "Allow" ], + "type": "string", + "x-ms-enum": { + "name": "UsagePermissionType", + "modelAsString": true + } + } + } + }, + "SubnetOverride": { + "description": "Property overrides on a subnet of a virtual network.", + "type": "object", + "properties": { + "resourceId": { + "description": "The resource ID of the subnet.", + "type": "string" + }, + "labSubnetName": { + "description": "The name given to the subnet within the lab.", + "type": "string" + }, + "useInVmCreationPermission": { + "description": "Indicates whether this subnet can be used during virtual machine creation (i.e. Allow, Deny).", + "enum": [ "Default", "Deny", "Allow" ], + "type": "string", + "x-ms-enum": { + "name": "UsagePermissionType", + "modelAsString": true + } + }, + "usePublicIpAddressPermission": { + "description": "Indicates whether public IP addresses can be assigned to virtual machines on this subnet (i.e. Allow, Deny).", + "enum": [ "Default", "Deny", "Allow" ], + "type": "string", + "x-ms-enum": { + "name": "UsagePermissionType", + "modelAsString": true + } + }, + "sharedPublicIpAddressConfiguration": { + "$ref": "#/definitions/SubnetSharedPublicIpAddressConfiguration", + "description": "Properties that virtual machines on this subnet will share." + }, + "virtualNetworkPoolName": { + "description": "The virtual network pool associated with this subnet.", + "type": "string" + } + } + }, + "SubnetOverrideFragment": { + "description": "Property overrides on a subnet of a virtual network.", + "type": "object", + "properties": { + "resourceId": { + "description": "The resource ID of the subnet.", + "type": "string" + }, + "labSubnetName": { + "description": "The name given to the subnet within the lab.", + "type": "string" + }, + "useInVmCreationPermission": { + "description": "Indicates whether this subnet can be used during virtual machine creation (i.e. Allow, Deny).", + "enum": [ "Default", "Deny", "Allow" ], + "type": "string", + "x-ms-enum": { + "name": "UsagePermissionType", + "modelAsString": true + } + }, + "usePublicIpAddressPermission": { + "description": "Indicates whether public IP addresses can be assigned to virtual machines on this subnet (i.e. Allow, Deny).", + "enum": [ "Default", "Deny", "Allow" ], + "type": "string", + "x-ms-enum": { + "name": "UsagePermissionType", + "modelAsString": true + } + }, + "sharedPublicIpAddressConfiguration": { + "$ref": "#/definitions/SubnetSharedPublicIpAddressConfigurationFragment", + "description": "Properties that virtual machines on this subnet will share." + }, + "virtualNetworkPoolName": { + "description": "The virtual network pool associated with this subnet.", + "type": "string" + } + } + }, + "SubnetSharedPublicIpAddressConfiguration": { + "description": "Configuration for public IP address sharing.", + "type": "object", + "properties": { + "allowedPorts": { + "description": "Backend ports that virtual machines on this subnet are allowed to expose", + "type": "array", + "items": { "$ref": "#/definitions/Port" } + } + } + }, + "SubnetSharedPublicIpAddressConfigurationFragment": { + "description": "Configuration for public IP address sharing.", + "type": "object", + "properties": { + "allowedPorts": { + "description": "Backend ports that virtual machines on this subnet are allowed to expose", + "type": "array", + "items": { "$ref": "#/definitions/PortFragment" } + } + } + }, + "TargetCostProperties": { + "description": "Properties of a cost target.", + "type": "object", + "properties": { + "status": { + "description": "Target cost status", + "enum": [ "Enabled", "Disabled" ], + "type": "string", + "x-ms-enum": { + "name": "TargetCostStatus", + "modelAsString": true + } + }, + "target": { + "format": "int32", + "description": "Lab target cost", + "type": "integer" + }, + "costThresholds": { + "description": "Cost thresholds.", + "type": "array", + "items": { "$ref": "#/definitions/CostThresholdProperties" } + }, + "cycleStartDateTime": { + "format": "date-time", + "description": "Reporting cycle start date.", + "type": "string" + }, + "cycleEndDateTime": { + "format": "date-time", + "description": "Reporting cycle end date.", + "type": "string" + }, + "cycleType": { + "description": "Reporting cycle type.", + "enum": [ "CalendarMonth", "Custom" ], + "type": "string", + "x-ms-enum": { + "name": "ReportingCycleType", + "modelAsString": true + } + } + } + }, + "UpdateResource": { + "description": "Represents an update resource", + "type": "object", + "properties": { + "tags": { + "description": "The tags of the resource.", + "type": "object", + "additionalProperties": { "type": "string" } + } + } + }, + "User": { + "description": "Profile of a lab user.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/UserProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "UserFragment": { + "description": "Profile of a lab user.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/UpdateResource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/UserPropertiesFragment", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "UserIdentity": { + "description": "Identity attributes of a lab user.", + "type": "object", + "properties": { + "principalName": { + "description": "Set to the principal name / UPN of the client JWT making the request.", + "type": "string" + }, + "principalId": { + "description": "Set to the principal Id of the client JWT making the request. Service principal will not have the principal Id.", + "type": "string" + }, + "tenantId": { + "description": "Set to the tenant ID of the client JWT making the request.", + "type": "string" + }, + "objectId": { + "description": "Set to the object Id of the client JWT making the request. Not all users have object Id. For CSP (reseller) scenarios for example, object Id is not available.", + "type": "string" + }, + "appId": { + "description": "Set to the app Id of the client JWT making the request.", + "type": "string" + } + } + }, + "UserIdentityFragment": { + "description": "Identity attributes of a lab user.", + "type": "object", + "properties": { + "principalName": { + "description": "Set to the principal name / UPN of the client JWT making the request.", + "type": "string" + }, + "principalId": { + "description": "Set to the principal Id of the client JWT making the request. Service principal will not have the principal Id.", + "type": "string" + }, + "tenantId": { + "description": "Set to the tenant ID of the client JWT making the request.", + "type": "string" + }, + "objectId": { + "description": "Set to the object Id of the client JWT making the request. Not all users have object Id. For CSP (reseller) scenarios for example, object Id is not available.", + "type": "string" + }, + "appId": { + "description": "Set to the app Id of the client JWT making the request.", + "type": "string" + } + } + }, + "UserList": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of the list operation.", + "type": "array", + "items": { "$ref": "#/definitions/User" } + }, + "nextLink": { + "description": "Link for next set of results.", + "type": "string" + } + } + }, + "UserProperties": { + "description": "Properties of a lab user profile.", + "type": "object", + "properties": { + "identity": { + "$ref": "#/definitions/UserIdentity", + "description": "The identity of the user." + }, + "secretStore": { + "$ref": "#/definitions/UserSecretStore", + "description": "The secret store of the user." + }, + "createdDate": { + "format": "date-time", + "description": "The creation date of the user profile.", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning status of the resource.", + "type": "string", + "readOnly": true + }, + "uniqueIdentifier": { + "description": "The unique immutable identifier of a resource (Guid).", + "type": "string", + "readOnly": true + } + } + }, + "UserPropertiesFragment": { + "description": "Properties of a lab user profile.", + "type": "object", + "properties": { + "identity": { + "$ref": "#/definitions/UserIdentityFragment", + "description": "The identity of the user." + }, + "secretStore": { + "$ref": "#/definitions/UserSecretStoreFragment", + "description": "The secret store of the user." + } + } + }, + "UserSecretStore": { + "description": "Properties of a user's secret store.", + "type": "object", + "properties": { + "keyVaultUri": { + "description": "The URI of the user's Key vault.", + "type": "string" + }, + "keyVaultId": { + "description": "The ID of the user's Key vault.", + "type": "string" + } + } + }, + "UserSecretStoreFragment": { + "description": "Properties of a user's secret store.", + "type": "object", + "properties": { + "keyVaultUri": { + "description": "The URI of the user's Key vault.", + "type": "string" + }, + "keyVaultId": { + "description": "The ID of the user's Key vault.", + "type": "string" + } + } + }, + "VirtualNetwork": { + "description": "A virtual network.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/Resource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/VirtualNetworkProperties", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "VirtualNetworkFragment": { + "description": "A virtual network.", + "type": "object", + "allOf": [ { "$ref": "#/definitions/UpdateResource" } ], + "properties": { + "properties": { + "$ref": "#/definitions/VirtualNetworkPropertiesFragment", + "description": "The properties of the resource.", + "x-ms-client-flatten": true + } + } + }, + "VirtualNetworkList": { + "description": "The response of a list operation.", + "type": "object", + "properties": { + "value": { + "description": "Results of the list operation.", + "type": "array", + "items": { "$ref": "#/definitions/VirtualNetwork" } + }, + "nextLink": { + "description": "Link for next set of results.", + "type": "string" + } + } + }, + "VirtualNetworkProperties": { + "description": "Properties of a virtual network.", + "type": "object", + "properties": { + "allowedSubnets": { + "description": "The allowed subnets of the virtual network.", + "type": "array", + "items": { "$ref": "#/definitions/Subnet" } + }, + "description": { + "description": "The description of the virtual network.", + "type": "string" + }, + "externalProviderResourceId": { + "description": "The Microsoft.Network resource identifier of the virtual network.", + "type": "string" + }, + "externalSubnets": { + "description": "The external subnet properties.", + "type": "array", + "items": { "$ref": "#/definitions/ExternalSubnet" }, + "readOnly": true + }, + "subnetOverrides": { + "description": "The subnet overrides of the virtual network.", + "type": "array", + "items": { "$ref": "#/definitions/SubnetOverride" } + }, + "createdDate": { + "format": "date-time", + "description": "The creation date of the virtual network.", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning status of the resource.", + "type": "string", + "readOnly": true + }, + "uniqueIdentifier": { + "description": "The unique immutable identifier of a resource (Guid).", + "type": "string", + "readOnly": true + } + } + }, + "VirtualNetworkPropertiesFragment": { + "description": "Properties of a virtual network.", + "type": "object", + "properties": { + "allowedSubnets": { + "description": "The allowed subnets of the virtual network.", + "type": "array", + "items": { "$ref": "#/definitions/SubnetFragment" } + }, + "description": { + "description": "The description of the virtual network.", + "type": "string" + }, + "externalProviderResourceId": { + "description": "The Microsoft.Network resource identifier of the virtual network.", + "type": "string" + }, + "subnetOverrides": { + "description": "The subnet overrides of the virtual network.", + "type": "array", + "items": { "$ref": "#/definitions/SubnetOverrideFragment" } + } + } + }, + "WeekDetails": { + "description": "Properties of a weekly schedule.", + "type": "object", + "properties": { + "weekdays": { + "description": "The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.).", + "type": "array", + "items": { "type": "string" } + }, + "time": { + "description": "The time of the day the schedule will occur.", + "type": "string" + } + } + }, + "WeekDetailsFragment": { + "description": "Properties of a weekly schedule.", + "type": "object", + "properties": { + "weekdays": { + "description": "The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.).", + "type": "array", + "items": { "type": "string" } + }, + "time": { + "description": "The time of the day the schedule will occur.", + "type": "string" + } + } + }, + "WindowsOsInfo": { + "description": "Information about a Windows OS.", + "type": "object", + "properties": { + "windowsOsState": { + "description": "The state of the Windows OS (i.e. NonSysprepped, SysprepRequested, SysprepApplied).", + "enum": [ "NonSysprepped", "SysprepRequested", "SysprepApplied" ], + "type": "string", + "x-ms-enum": { + "name": "WindowsOsState", + "modelAsString": true + } + } + } + }, + "WindowsOsInfoFragment": { + "description": "Information about a Windows OS.", + "type": "object", + "properties": { + "windowsOsState": { + "description": "The state of the Windows OS (i.e. NonSysprepped, SysprepRequested, SysprepApplied).", + "enum": [ "NonSysprepped", "SysprepRequested", "SysprepApplied" ], + "type": "string", + "x-ms-enum": { + "name": "WindowsOsState", + "modelAsString": true + } + } + } + } + }, + "parameters": { + "api-version": { + "name": "api-version", + "in": "query", + "description": "Client API version.", + "required": true, + "type": "string", + "default": "2018-09-15" + }, + "locationName": { + "name": "locationName", + "in": "path", + "description": "The name of the location.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription ID.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "OAuth2 Implicit Grant", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { "user_impersonation": "Access Microsoft Azure" } + } + }, + "security": [ { "azure_auth": [ "user_impersonation" ] } ] +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_ClaimAnyVm.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_ClaimAnyVm.json new file mode 100644 index 000000000000..ce186cf5cec0 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_ClaimAnyVm.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "{devtestlab-name}", + "api-version": "2018-10-15-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_CreateEnvironment.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_CreateEnvironment.json new file mode 100644 index 000000000000..e4f72214e0b8 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_CreateEnvironment.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "{devtestlab-name}", + "api-version": "2018-10-15-preview", + "labVirtualMachineCreationParameter": { + "properties": { + "osType": "Linux", + "size": "Standard_A2_v2", + "userName": "{user-name}", + "password": "{user-password}", + "labSubnetName": "{virtualnetwork-subnet-name}", + "labVirtualNetworkId": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}/virtualnetworks/{virtualnetwork-name}", + "disallowPublicIpAddress": true, + "galleryImageReference": { + "offer": "UbuntuServer", + "publisher": "Canonical", + "sku": "16.04-LTS", + "osType": "Linux", + "version": "Latest" + }, + "allowClaim": true, + "storageType": "Standard" + }, + "name": "{virtualmachine-name}", + "location": "{azure-location}", + "tags": { + "MyTag": "MyValue" + } + } + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_CreateOrUpdate.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_CreateOrUpdate.json new file mode 100644 index 000000000000..d80294795e2c --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_CreateOrUpdate.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "{devtestlab-name}", + "api-version": "2018-10-15-preview", + "lab": { + "properties": { + "labStorageType": "{Standard|Premium}" + }, + "location": "{azure-location}", + "tags": { + "MyTag": "MyValue" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "labStorageType": "Standard", + "mandatoryArtifactsResourceIdsLinux": [], + "mandatoryArtifactsResourceIdsWindows": [], + "createdDate": "2018-10-01T18:40:48.1739018-07:00", + "premiumDataDisks": "Disabled", + "environmentPermission": "Reader", + "announcement": { + "title": "", + "markdown": "", + "enabled": "Disabled", + "expired": false + }, + "support": { + "enabled": "Disabled", + "markdown": "" + }, + "provisioningState": "Creating", + "uniqueIdentifier": "{unique-identifier}" + }, + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}", + "name": "{devtestlab-name}", + "type": "Microsoft.DevTestLab/labs", + "location": "{azure-location}", + "tags": { + "MyTag": "MyValue" + } + } + }, + "201": { + "body": { + "properties": { + "labStorageType": "Standard", + "mandatoryArtifactsResourceIdsLinux": [], + "mandatoryArtifactsResourceIdsWindows": [], + "createdDate": "2018-10-01T18:40:48.1739018-07:00", + "premiumDataDisks": "Disabled", + "environmentPermission": "Reader", + "announcement": { + "title": "", + "markdown": "", + "enabled": "Disabled", + "expired": false + }, + "support": { + "enabled": "Disabled", + "markdown": "" + }, + "provisioningState": "Creating", + "uniqueIdentifier": "{unique-identifier}" + }, + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}", + "name": "{devtestlab-name}", + "type": "Microsoft.DevTestLab/labs", + "location": "{azure-location}", + "tags": { + "MyTag": "MyValue" + } + } + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_Delete.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_Delete.json new file mode 100644 index 000000000000..69dc3d95bebe --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_Delete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "{devtestlab-name}", + "api-version": "2018-10-15-preview" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + }, + "204": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_GenerateUploadUri.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_GenerateUploadUri.json new file mode 100644 index 000000000000..a84e61122adb --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_GenerateUploadUri.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "{devtestlab-name}", + "api-version": "2018-10-15-preview", + "generateUploadUriParameter": { + "blobName": "{blob-name}" + } + }, + "responses": { + "200": { + "body": { + "uploadUri": "https://{storage-name}.blob.core.windows.net/uploads/{blob-name}?sv=2017-04-17&sr=b&sig={signature}&st=2018-10-02T01:55:24Z&se=2018-10-03T02:10:23Z&sp=rcw" + } + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_Get.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_Get.json new file mode 100644 index 000000000000..1f56023f25b8 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_Get.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "{devtestlab-name}", + "api-version": "2018-10-15-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "defaultStorageAccount": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/{storageaccount-name}", + "defaultPremiumStorageAccount": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/{storageaccount-name}", + "artifactsStorageAccount": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/{storageaccount-name}", + "premiumDataDiskStorageAccount": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/{storageaccount-name}", + "vaultName": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/{keyvault-name}", + "labStorageType": "Standard", + "mandatoryArtifactsResourceIdsLinux": [], + "mandatoryArtifactsResourceIdsWindows": [], + "createdDate": "2018-10-01T18:40:48.1739018-07:00", + "premiumDataDisks": "Disabled", + "environmentPermission": "Reader", + "announcement": { + "title": "", + "markdown": "", + "enabled": "Disabled", + "expired": false + }, + "support": { + "enabled": "Disabled", + "markdown": "" + }, + "provisioningState": "Succeeded", + "uniqueIdentifier": "{unique-identifier}" + }, + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}", + "name": "{devtestlab-name}", + "type": "Microsoft.DevTestLab/labs", + "location": "{azure-location}", + "tags": { + "MyTag": "MyValue" + } + } + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_ListByResourceGroup.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_ListByResourceGroup.json new file mode 100644 index 000000000000..6cc3c30ad64d --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_ListByResourceGroup.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-10-15-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "vaultName": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/{keyvault-name}", + "labStorageType": "Standard", + "mandatoryArtifactsResourceIdsLinux": [], + "mandatoryArtifactsResourceIdsWindows": [], + "createdDate": "2018-10-02T10:23:20.9573599-07:00", + "premiumDataDisks": "Disabled", + "environmentPermission": "Reader", + "announcement": { + "title": "", + "markdown": "", + "enabled": "Disabled", + "expired": false + }, + "support": { + "enabled": "Disabled", + "markdown": "" + }, + "provisioningState": "Succeeded", + "uniqueIdentifier": "{unique-identifier}" + }, + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}", + "name": "{devtestlab-name}", + "type": "Microsoft.DevTestLab/labs", + "location": "{azure-location}", + "tags": { + "MyTag": "MyValue" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_ListBySubscription.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_ListBySubscription.json new file mode 100644 index 000000000000..cdae8b2f96e6 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_ListBySubscription.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2018-10-15-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "defaultStorageAccount": "/subscriptions/{subscription-id}/resourceGroups/{resourcegroup-name-1}/providers/Microsoft.Storage/storageAccounts/{storageaccount-name-1}", + "defaultPremiumStorageAccount": "/subscriptions/{subscription-id}/resourceGroups/{resourcegroup-name-1}/providers/Microsoft.Storage/storageAccounts/{storageaccount-name-1}", + "artifactsStorageAccount": "/subscriptions/{subscription-id}/resourceGroups/{resourcegroup-name-1}/providers/Microsoft.Storage/storageAccounts/{storageaccount-name-1}", + "premiumDataDiskStorageAccount": "/subscriptions/{subscription-id}/resourceGroups/{resourcegroup-name-1}/providers/Microsoft.Storage/storageAccounts/{storageaccount-name-1}", + "vaultName": "/subscriptions/{subscription-id}/resourceGroups/{resourcegroup-name-1}/providers/Microsoft.KeyVault/vaults/{keyvault-name-1}", + "labStorageType": "Premium", + "mandatoryArtifactsResourceIdsLinux": [], + "mandatoryArtifactsResourceIdsWindows": [], + "createdDate": "2018-09-30T08:38:13.1973609-07:00", + "premiumDataDisks": "Disabled", + "environmentPermission": "Reader", + "announcement": { + "title": "", + "markdown": "", + "enabled": "Disabled", + "expired": false + }, + "support": { + "enabled": "Disabled", + "markdown": "" + }, + "provisioningState": "Succeeded", + "uniqueIdentifier": "{unique-identifier}" + }, + "id": "/subscriptions/{subscription-id}/resourcegroups/{resourcegroup-name-1}/providers/microsoft.devtestlab/labs/{lab-name-1}", + "name": "{lab-name-1}", + "type": "Microsoft.DevTestLab/labs", + "location": "westcentralus", + "tags": {} + }, + { + "properties": { + "defaultStorageAccount": "/subscriptions/{subscription-id}/resourceGroups/{resourcegroup-name-2}/providers/Microsoft.Storage/storageAccounts/{storageaccount-name-2}", + "defaultPremiumStorageAccount": "/subscriptions/{subscription-id}/resourceGroups/{resourcegroup-name-2}/providers/Microsoft.Storage/storageAccounts/{storageaccount-name-2}", + "artifactsStorageAccount": "/subscriptions/{subscription-id}/resourceGroups/{resourcegroup-name-2}/providers/Microsoft.Storage/storageAccounts/{storageaccount-name-2}", + "premiumDataDiskStorageAccount": "/subscriptions/{subscription-id}/resourceGroups/{resourcegroup-name-2}/providers/Microsoft.Storage/storageAccounts/{storageaccount-name-2}", + "vaultName": "/subscriptions/{subscription-id}/resourceGroups/{resourcegroup-name-2}/providers/Microsoft.KeyVault/vaults/{keyvault-name-2}", + "labStorageType": "Premium", + "mandatoryArtifactsResourceIdsLinux": [], + "mandatoryArtifactsResourceIdsWindows": [], + "createdDate": "2018-09-30T09:37:52.9675083-07:00", + "premiumDataDisks": "Disabled", + "environmentPermission": "Reader", + "announcement": { + "title": "", + "markdown": "", + "enabled": "Disabled", + "expired": false + }, + "support": { + "enabled": "Disabled", + "markdown": "" + }, + "provisioningState": "Succeeded", + "uniqueIdentifier": "{unique-identifier}" + }, + "id": "/subscriptions/{subscription-id}/resourcegroups/{resourcegroup-name-2}/providers/microsoft.devtestlab/labs/{lab-name-2}", + "name": "{lab-name-2}", + "type": "Microsoft.DevTestLab/labs", + "location": "japaneast", + "tags": {} + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_Update.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_Update.json new file mode 100644 index 000000000000..242a31478233 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/Labs_Update.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "{devtestlab-name}", + "api-version": "2018-10-15-preview", + "lab": { + "properties": { + "labStorageType": "Premium" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "vaultName": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/{keyvault-name}", + "labStorageType": "Standard", + "mandatoryArtifactsResourceIdsLinux": [], + "mandatoryArtifactsResourceIdsWindows": [], + "createdDate": "2018-10-01T18:40:48.1739018-07:00", + "premiumDataDisks": "Disabled", + "environmentPermission": "Reader", + "announcement": { + "title": "", + "markdown": "", + "enabled": "Disabled", + "expired": false + }, + "support": { + "enabled": "Disabled", + "markdown": "" + }, + "provisioningState": "Succeeded", + "uniqueIdentifier": "{unique-identifier}" + }, + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}", + "name": "{devtestlab-name}", + "type": "Microsoft.DevTestLab/labs", + "location": "{azure-location}", + "tags": { + "MyTag": "MyValue" + } + } + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/ProviderOperations_List.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/ProviderOperations_List.json new file mode 100644 index 000000000000..6dd7298e67a5 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/ProviderOperations_List.json @@ -0,0 +1,859 @@ +{ + "parameters": { + "api-version": "2018-10-15-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.DevTestLab/register/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "register", + "operation": "Register Subscription", + "description": "Registers the subscription" + } + }, + { + "name": "Microsoft.DevTestLab/labs/policySets/EvaluatePolicies/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "policy sets", + "operation": "Evaluate policy", + "description": "Evaluates lab policy." + } + }, + { + "name": "Microsoft.DevTestLab/labs/delete", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Labs", + "operation": "Delete labs.", + "description": "Delete labs." + } + }, + { + "name": "Microsoft.DevTestLab/labs/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Labs", + "operation": "Read labs.", + "description": "Read labs." + } + }, + { + "name": "Microsoft.DevTestLab/labs/write", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Labs", + "operation": "Add or modify labs.", + "description": "Add or modify labs." + } + }, + { + "name": "Microsoft.DevTestLab/labs/ListVhds/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Labs", + "operation": "List VHDs", + "description": "List disk images available for custom image creation." + } + }, + { + "name": "Microsoft.DevTestLab/labs/GenerateUploadUri/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Labs", + "operation": "Generate image upload URI", + "description": "Generate a URI for uploading custom disk images to a Lab." + } + }, + { + "name": "Microsoft.DevTestLab/labs/CreateEnvironment/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Labs", + "operation": "Create a virtual machine", + "description": "Create virtual machines in a lab." + } + }, + { + "name": "Microsoft.DevTestLab/labs/ClaimAnyVm/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Labs", + "operation": "Claim Any Virtual Machine", + "description": "Claim a random claimable virtual machine in the lab." + } + }, + { + "name": "Microsoft.DevTestLab/labs/ExportResourceUsage/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Labs", + "operation": "Exports the lab resource usage into a storage account", + "description": "Exports the lab resource usage into a storage account" + } + }, + { + "name": "Microsoft.DevTestLab/labs/ImportVirtualMachine/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Labs", + "operation": "Import a virtual machine", + "description": "Import a virtual machine into a different lab." + } + }, + { + "name": "Microsoft.DevTestLab/labs/policySets/policies/delete", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "policies", + "operation": "Delete policies.", + "description": "Delete policies." + } + }, + { + "name": "Microsoft.DevTestLab/labs/policySets/policies/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "policies", + "operation": "Read policies.", + "description": "Read policies." + } + }, + { + "name": "Microsoft.DevTestLab/labs/policySets/policies/write", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "policies", + "operation": "Add or modify policies.", + "description": "Add or modify policies." + } + }, + { + "name": "Microsoft.DevTestLab/labs/schedules/delete", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "schedules", + "operation": "Delete schedules.", + "description": "Delete schedules." + } + }, + { + "name": "Microsoft.DevTestLab/labs/schedules/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "schedules", + "operation": "Read schedules.", + "description": "Read schedules." + } + }, + { + "name": "Microsoft.DevTestLab/labs/schedules/write", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "schedules", + "operation": "Add or modify schedules.", + "description": "Add or modify schedules." + } + }, + { + "name": "Microsoft.DevTestLab/labs/schedules/Execute/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "schedules", + "operation": "Execute schedule", + "description": "Execute a schedule." + } + }, + { + "name": "Microsoft.DevTestLab/labs/schedules/ListApplicable/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "schedules", + "operation": "List all applicable schedules", + "description": "Lists all applicable schedules" + } + }, + { + "name": "Microsoft.DevTestLab/schedules/delete", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "schedules", + "operation": "Delete schedules.", + "description": "Delete schedules." + } + }, + { + "name": "Microsoft.DevTestLab/schedules/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "schedules", + "operation": "Read schedules.", + "description": "Read schedules." + } + }, + { + "name": "Microsoft.DevTestLab/schedules/write", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "schedules", + "operation": "Add or modify schedules.", + "description": "Add or modify schedules." + } + }, + { + "name": "Microsoft.DevTestLab/schedules/Execute/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "schedules", + "operation": "Execute schedule", + "description": "Execute a schedule." + } + }, + { + "name": "Microsoft.DevTestLab/schedules/Retarget/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "schedules", + "operation": "Retarget schedule.", + "description": "Updates a schedule's target resource Id." + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/schedules/delete", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "schedules", + "operation": "Delete schedules.", + "description": "Delete schedules." + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/schedules/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "schedules", + "operation": "Read schedules.", + "description": "Read schedules." + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/schedules/write", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "schedules", + "operation": "Add or modify schedules.", + "description": "Add or modify schedules." + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/schedules/Execute/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "schedules", + "operation": "Execute schedule", + "description": "Execute a schedule." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/serviceFabrics/schedules/delete", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "schedules", + "operation": "Delete schedules.", + "description": "Delete schedules." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/serviceFabrics/schedules/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "schedules", + "operation": "Read schedules.", + "description": "Read schedules." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/serviceFabrics/schedules/write", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "schedules", + "operation": "Add or modify schedules.", + "description": "Add or modify schedules." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/serviceFabrics/schedules/Execute/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "schedules", + "operation": "Execute schedule", + "description": "Execute a schedule." + } + }, + { + "name": "Microsoft.DevTestLab/labs/artifactSources/delete", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Artifact sources", + "operation": "Delete artifact sources.", + "description": "Delete artifact sources." + } + }, + { + "name": "Microsoft.DevTestLab/labs/artifactSources/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Artifact sources", + "operation": "Read artifact sources.", + "description": "Read artifact sources." + } + }, + { + "name": "Microsoft.DevTestLab/labs/artifactSources/write", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Artifact sources", + "operation": "Add or modify artifact sources.", + "description": "Add or modify artifact sources." + } + }, + { + "name": "Microsoft.DevTestLab/labs/artifactSources/artifacts/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Artifacts", + "operation": "Read artifacts.", + "description": "Read artifacts." + } + }, + { + "name": "Microsoft.DevTestLab/labs/artifactSources/artifacts/GenerateArmTemplate/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Artifacts", + "operation": "Generates an ARM template for the given artifact", + "description": "Generates an ARM template for the given artifact, uploads the required files to a storage account, and validates the generated artifact." + } + }, + { + "name": "Microsoft.DevTestLab/labs/galleryImages/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "gallery images", + "operation": "Read gallery images.", + "description": "Read gallery images." + } + }, + { + "name": "Microsoft.DevTestLab/labs/customImages/delete", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "custom images", + "operation": "Delete custom images.", + "description": "Delete custom images." + } + }, + { + "name": "Microsoft.DevTestLab/labs/customImages/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "custom images", + "operation": "Read custom images.", + "description": "Read custom images." + } + }, + { + "name": "Microsoft.DevTestLab/labs/customImages/write", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "custom images", + "operation": "Add or modify custom images.", + "description": "Add or modify custom images." + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualNetworks/delete", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "virtual networks", + "operation": "Delete virtual networks.", + "description": "Delete virtual networks." + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualNetworks/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "virtual networks", + "operation": "Read virtual networks.", + "description": "Read virtual networks." + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualNetworks/write", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "virtual networks", + "operation": "Add or modify virtual networks.", + "description": "Add or modify virtual networks." + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/delete", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Virtual machines", + "operation": "Delete virtual machines.", + "description": "Delete virtual machines." + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Virtual machines", + "operation": "Read virtual machines.", + "description": "Read virtual machines." + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/write", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Virtual machines", + "operation": "Add or modify virtual machines.", + "description": "Add or modify virtual machines." + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/Start/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Virtual machines", + "operation": "Start virtual machine", + "description": "Start a virtual machine." + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/Stop/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Virtual machines", + "operation": "Stop virtual machine", + "description": "Stop a virtual machine" + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/Restart/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Virtual machines", + "operation": "Restart virtual machine", + "description": "Restart a virtual machine." + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/Redeploy/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Virtual machines", + "operation": "Redeploy a virtual machine", + "description": "Redeploy a virtual machine" + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/Resize/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Virtual machines", + "operation": "Resize Virtual Machine.", + "description": "Resize Virtual Machine." + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/ApplyArtifacts/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Virtual machines", + "operation": "Apply artifacts to virtual machine", + "description": "Apply artifacts to virtual machine." + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/AddDataDisk/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Virtual machines", + "operation": "Add or attach a data disk", + "description": "Attach a new or existing data disk to virtual machine." + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/DetachDataDisk/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Virtual machines", + "operation": "Detach the specified disk from the virtual machine", + "description": "Detach the specified disk from the virtual machine." + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/Claim/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Virtual machines", + "operation": "Claim a virtual machine", + "description": "Take ownership of an existing virtual machine" + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/UnClaim/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Virtual machines", + "operation": "Unclaim a virtual machine", + "description": "Release ownership of an existing virtual machine" + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/TransferDisks/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Virtual machines", + "operation": "Transfer data disks to yourself", + "description": "Transfer ownership of virtual machine data disks to yourself" + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/ListApplicableSchedules/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Virtual machines", + "operation": "List all applicable schedules", + "description": "Lists all applicable schedules" + } + }, + { + "name": "Microsoft.DevTestLab/labs/virtualMachines/GetRdpFileContents/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Virtual machines", + "operation": "Get RDP file contents", + "description": "Gets a string that represents the contents of the RDP file for the virtual machine" + } + }, + { + "name": "Microsoft.DevTestLab/labs/formulas/delete", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Formulas", + "operation": "Delete formulas.", + "description": "Delete formulas." + } + }, + { + "name": "Microsoft.DevTestLab/labs/formulas/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Formulas", + "operation": "Read formulas.", + "description": "Read formulas." + } + }, + { + "name": "Microsoft.DevTestLab/labs/formulas/write", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Formulas", + "operation": "Add or modify formulas.", + "description": "Add or modify formulas." + } + }, + { + "name": "Microsoft.DevTestLab/labs/costs/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "costs", + "operation": "Read costs.", + "description": "Read costs." + } + }, + { + "name": "Microsoft.DevTestLab/labs/costs/write", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "costs", + "operation": "Add or modify costs.", + "description": "Add or modify costs." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/disks/delete", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "disks", + "operation": "Delete disks.", + "description": "Delete disks." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/disks/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "disks", + "operation": "Read disks.", + "description": "Read disks." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/disks/write", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "disks", + "operation": "Add or modify disks.", + "description": "Add or modify disks." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/disks/Attach/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "disks", + "operation": "Attach disk", + "description": "Attach and create the lease of the disk to the virtual machine." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/disks/Detach/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "disks", + "operation": "Detach and break the lease of the disk attached to the virtual machine", + "description": "Detach and break the lease of the disk attached to the virtual machine." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/delete", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "user profiles", + "operation": "Delete user profiles.", + "description": "Delete user profiles." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "user profiles", + "operation": "Read user profiles.", + "description": "Read user profiles." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/write", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "user profiles", + "operation": "Add or modify user profiles.", + "description": "Add or modify user profiles." + } + }, + { + "name": "Microsoft.DevTestLab/labs/notificationChannels/delete", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "notificationChannels", + "operation": "Delete notificationchannels.", + "description": "Delete notificationchannels." + } + }, + { + "name": "Microsoft.DevTestLab/labs/notificationChannels/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "notificationChannels", + "operation": "Read notificationchannels.", + "description": "Read notificationchannels." + } + }, + { + "name": "Microsoft.DevTestLab/labs/notificationChannels/write", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "notificationChannels", + "operation": "Add or modify notificationchannels.", + "description": "Add or modify notificationchannels." + } + }, + { + "name": "Microsoft.DevTestLab/labs/notificationChannels/Notify/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "notificationChannels", + "operation": "Notify", + "description": "Send notification to provided channel." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/secrets/delete", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "secrets", + "operation": "Delete secrets.", + "description": "Delete secrets." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/secrets/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "secrets", + "operation": "Read secrets.", + "description": "Read secrets." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/secrets/write", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "secrets", + "operation": "Add or modify secrets.", + "description": "Add or modify secrets." + } + }, + { + "name": "Microsoft.DevTestLab/locations/operations/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "operations", + "operation": "Read operations.", + "description": "Read operations." + } + }, + { + "name": "Microsoft.DevTestLab/labs/artifactSources/armTemplates/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Azure Resource Manager templates", + "operation": "Read azure resource manager templates.", + "description": "Read azure resource manager templates." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/environments/delete", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "environments", + "operation": "Delete environments.", + "description": "Delete environments." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/environments/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "environments", + "operation": "Read environments.", + "description": "Read environments." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/environments/write", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "environments", + "operation": "Add or modify environments.", + "description": "Add or modify environments." + } + }, + { + "name": "Microsoft.DevTestLab/labs/serviceRunners/delete", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Service runners", + "operation": "Delete service runners.", + "description": "Delete service runners." + } + }, + { + "name": "Microsoft.DevTestLab/labs/serviceRunners/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Service runners", + "operation": "Read service runners.", + "description": "Read service runners." + } + }, + { + "name": "Microsoft.DevTestLab/labs/serviceRunners/write", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Service runners", + "operation": "Add or modify service runners.", + "description": "Add or modify service runners." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/serviceFabrics/delete", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Service Fabrics", + "operation": "Delete service fabrics.", + "description": "Delete service fabrics." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/serviceFabrics/read", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Service Fabrics", + "operation": "Read service fabrics.", + "description": "Read service fabrics." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/serviceFabrics/write", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Service Fabrics", + "operation": "Add or modify service fabrics.", + "description": "Add or modify service fabrics." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/serviceFabrics/Start/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Service Fabrics", + "operation": "Start service fabric", + "description": "Start a service fabric." + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/serviceFabrics/Stop/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Service Fabrics", + "operation": "Stop service fabric", + "description": "Stop a service fabric" + } + }, + { + "name": "Microsoft.DevTestLab/labs/users/serviceFabrics/ListApplicableSchedules/action", + "display": { + "provider": "Microsoft DevTest Labs", + "resource": "Service Fabrics", + "operation": "List all applicable schedules", + "description": "Lists all applicable schedules" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Claim.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Claim.json new file mode 100644 index 000000000000..735b68da17b0 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Claim.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "labName": "{devtestlab-name}", + "name": "{virtualmachine-name}", + "api-version": "2018-10-15-preview" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_CreateOrUpdate.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_CreateOrUpdate.json new file mode 100644 index 000000000000..dfe3a0c00834 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_CreateOrUpdate.json @@ -0,0 +1,117 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "labName": "{devtestlab-name}", + "name": "{virtualmachine-name}", + "api-version": "2018-10-15-preview", + "labVirtualMachine": { + "properties": { + "osType": "Linux", + "size": "Standard_A2_v2", + "userName": "{user-name}", + "password": "{user-password}", + "labSubnetName": "{virtualnetwork-name}Subnet", + "labVirtualNetworkId": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}/virtualnetworks/{virtualnetwork-name}", + "disallowPublicIpAddress": true, + "galleryImageReference": { + "offer": "UbuntuServer", + "publisher": "Canonical", + "sku": "16.04-LTS", + "osType": "Linux", + "version": "Latest" + }, + "allowClaim": true, + "storageType": "Standard" + }, + "location": "{azure-location}", + "tags": { + "MyTag": "MyValue" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "ownerObjectId": "", + "ownerUserPrincipalName": "", + "createdByUserId": "", + "createdByUser": "", + "createdDate": "2018-10-01T16:53:02.4830866-07:00", + "size": "Standard_A2_v2", + "userName": "{user-name}", + "labSubnetName": "{virtualnetwork-name}Subnet", + "labVirtualNetworkId": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}/virtualnetworks/{virtualnetwork-name}", + "disallowPublicIpAddress": true, + "artifactDeploymentStatus": { + "artifactsApplied": 0, + "totalArtifacts": 0 + }, + "galleryImageReference": { + "offer": "UbuntuServer", + "publisher": "Canonical", + "sku": "16.04-LTS", + "osType": "Linux", + "version": "Latest" + }, + "networkInterface": {}, + "allowClaim": true, + "storageType": "Standard", + "virtualMachineCreationSource": "FromGalleryImage", + "dataDiskParameters": [], + "provisioningState": "Creating", + "uniqueIdentifier": "{unique-identifier}" + }, + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}/virtualmachines/{virtualmachine-name}", + "name": "{virtualmachine-name}", + "type": "Microsoft.DevTestLab/labs/virtualMachines", + "location": "{azure-location}", + "tags": { + "MyTag": "MyValue" + } + } + }, + "201": { + "body": { + "properties": { + "ownerObjectId": "", + "ownerUserPrincipalName": "", + "createdByUserId": "", + "createdByUser": "", + "createdDate": "2018-10-01T16:53:02.4830866-07:00", + "size": "Standard_A2_v2", + "userName": "{user-name}", + "labSubnetName": "{virtualnetwork-name}Subnet", + "labVirtualNetworkId": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}/virtualnetworks/{virtualnetwork-name}", + "disallowPublicIpAddress": true, + "artifactDeploymentStatus": { + "artifactsApplied": 0, + "totalArtifacts": 0 + }, + "galleryImageReference": { + "offer": "UbuntuServer", + "publisher": "Canonical", + "sku": "16.04-LTS", + "osType": "Linux", + "version": "Latest" + }, + "networkInterface": {}, + "allowClaim": true, + "storageType": "Standard", + "virtualMachineCreationSource": "FromGalleryImage", + "dataDiskParameters": [], + "provisioningState": "Creating", + "uniqueIdentifier": "{unique-identifier}" + }, + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}/virtualmachines/{virtualmachine-name}", + "name": "{virtualmachine-name}", + "type": "Microsoft.DevTestLab/labs/virtualMachines", + "location": "{azure-location}", + "tags": { + "MyTag": "MyValue" + } + } + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Delete.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Delete.json new file mode 100644 index 000000000000..ae456eab47a4 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Delete.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "labName": "{devtestlab-name}", + "name": "{virtualmachine-name}", + "api-version": "2018-10-15-preview" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + }, + "204": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Get.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Get.json new file mode 100644 index 000000000000..a09a6fa966fa --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Get.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "labName": "{devtestlab-name}", + "name": "{virtualmachine-name}", + "api-version": "2018-10-15-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "ownerObjectId": "", + "ownerUserPrincipalName": "", + "createdByUserId": "", + "createdByUser": "", + "createdDate": "2018-10-01T16:53:02.4830866-07:00", + "computeId": "/subscriptions/{subscription-id}/resourceGroups/{devtestlab-name}-{virtualmachine-name}-{random-suffix}/providers/Microsoft.Compute/virtualMachines/{virtualmachine-name}", + "osType": "Linux", + "size": "Standard_A2_v2", + "userName": "{user-name}", + "labSubnetName": "{virtualnetwork-name}Subnet", + "labVirtualNetworkId": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}/virtualnetworks/{virtualnetwork-name}", + "disallowPublicIpAddress": true, + "artifactDeploymentStatus": { + "artifactsApplied": 0, + "totalArtifacts": 0 + }, + "galleryImageReference": { + "offer": "UbuntuServer", + "publisher": "Canonical", + "sku": "16.04-LTS", + "osType": "Linux", + "version": "Latest" + }, + "networkInterface": {}, + "allowClaim": true, + "storageType": "Standard", + "virtualMachineCreationSource": "FromGalleryImage", + "dataDiskParameters": [], + "provisioningState": "Succeeded", + "uniqueIdentifier": "{unique-identifier}" + }, + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}/virtualmachines/{virtualmachine-name}", + "name": "{virtualmachine-name}", + "type": "Microsoft.DevTestLab/labs/virtualMachines", + "location": "{azure-location}", + "tags": { + "MyTag": "MyValue" + } + } + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_GetRdpFileContents.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_GetRdpFileContents.json new file mode 100644 index 000000000000..6fc0184759c7 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_GetRdpFileContents.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "labName": "{devtestlab-name}", + "name": "{virtualmachine-name}", + "api-version": "2018-10-15-preview" + }, + "responses": { + "200": { + "body": { + "contents": "full address:s:10.0.0.4\r\nprompt for credentials:i:1\r\nusername:s:{virtualmachine-name}\\{user-name}\r\n" + } + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_List.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_List.json new file mode 100644 index 000000000000..c8d5079322db --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_List.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "labName": "{devtestlab-name}", + "api-version": "2018-10-15-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "ownerObjectId": "", + "ownerUserPrincipalName": "", + "createdByUserId": "", + "createdByUser": "", + "createdDate": "2018-10-01T16:53:02.4830866-07:00", + "computeId": "/subscriptions/{subscription-id}/resourceGroups/{devtestlab-name}-{virtualmachine-name}-{random-suffix}/providers/Microsoft.Compute/virtualMachines/{virtualmachine-name}", + "osType": "Linux", + "size": "Standard_A2_v2", + "userName": "{user-name}", + "labSubnetName": "{virtualnetwork-name}Subnet", + "labVirtualNetworkId": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}/virtualnetworks/{virtualnetwork-name}", + "disallowPublicIpAddress": true, + "artifactDeploymentStatus": { + "artifactsApplied": 0, + "totalArtifacts": 0 + }, + "galleryImageReference": { + "offer": "UbuntuServer", + "publisher": "Canonical", + "sku": "16.04-LTS", + "osType": "Linux", + "version": "Latest" + }, + "networkInterface": {}, + "allowClaim": true, + "storageType": "Standard", + "virtualMachineCreationSource": "FromGalleryImage", + "dataDiskParameters": [], + "provisioningState": "Succeeded", + "uniqueIdentifier": "{unique-identifier}" + }, + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}/virtualmachines/{virtualmachine-name}", + "name": "{virtualmachine-name}", + "type": "Microsoft.DevTestLab/labs/virtualMachines", + "location": "{azure-location}", + "tags": { + "MyTag": "MyValue" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Redeploy.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Redeploy.json new file mode 100644 index 000000000000..9f39bf9443c4 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Redeploy.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "labName": "{devtestlab-name}", + "name": "{virtualmachine-name}", + "api-version": "2018-10-15-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Resize.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Resize.json new file mode 100644 index 000000000000..8bb556bf7b27 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Resize.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "labName": "{devtestlab-name}", + "name": "{virtualmachine-name}", + "api-version": "2018-10-15-preview", + "monitor": "true", + "resizeLabVirtualMachineProperties": { + "size": "Standard_A4_v2" + } + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Restart.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Restart.json new file mode 100644 index 000000000000..9f39bf9443c4 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Restart.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "labName": "{devtestlab-name}", + "name": "{virtualmachine-name}", + "api-version": "2018-10-15-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Start.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Start.json new file mode 100644 index 000000000000..9f39bf9443c4 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Start.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "labName": "{devtestlab-name}", + "name": "{virtualmachine-name}", + "api-version": "2018-10-15-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Stop.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Stop.json new file mode 100644 index 000000000000..735b68da17b0 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Stop.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "labName": "{devtestlab-name}", + "name": "{virtualmachine-name}", + "api-version": "2018-10-15-preview" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_UnClaim.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_UnClaim.json new file mode 100644 index 000000000000..9f39bf9443c4 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_UnClaim.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "labName": "{devtestlab-name}", + "name": "{virtualmachine-name}", + "api-version": "2018-10-15-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Update.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Update.json new file mode 100644 index 000000000000..991168c9b4e7 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualMachines_Update.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "labName": "{devtestlab-name}", + "name": "{virtualmachine-name}", + "api-version": "2018-10-15-preview", + "labVirtualMachine": { + "properties": { + "notes": "Updated notes" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "ownerObjectId": "", + "ownerUserPrincipalName": "", + "createdByUserId": "", + "createdByUser": "", + "createdDate": "2018-10-01T16:53:02.4830866-07:00", + "computeId": "/subscriptions/{subscription-id}/resourceGroups/{devtestlab-name}-{virtualmachine-name}-{random-suffix}/providers/Microsoft.Compute/virtualMachines/{virtualmachine-name}", + "osType": "Linux", + "size": "Standard_A2_v2", + "userName": "{user-name}", + "labSubnetName": "{virtualnetwork-name}Subnet", + "labVirtualNetworkId": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}/virtualnetworks/{virtualnetwork-name}", + "disallowPublicIpAddress": true, + "artifactDeploymentStatus": { + "artifactsApplied": 0, + "totalArtifacts": 0 + }, + "galleryImageReference": { + "offer": "UbuntuServer", + "publisher": "Canonical", + "sku": "16.04-LTS", + "osType": "Linux", + "version": "Latest" + }, + "networkInterface": {}, + "allowClaim": true, + "storageType": "Standard", + "virtualMachineCreationSource": "FromGalleryImage", + "dataDiskParameters": [], + "provisioningState": "Succeeded", + "uniqueIdentifier": "{unique-identifier}" + }, + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}/virtualmachines/{virtualmachine-name}", + "name": "{virtualmachine-name}", + "type": "Microsoft.DevTestLab/labs/virtualMachines", + "location": "{azure-location}", + "tags": { + "MyTag": "MyValue" + } + } + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualNetworks_CreateOrUpdate.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualNetworks_CreateOrUpdate.json new file mode 100644 index 000000000000..3412abbdc64d --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualNetworks_CreateOrUpdate.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "labName": "{devtestlab-name}", + "name": "{virtualnetwork-name}", + "api-version": "2018-10-15-preview", + "virtualNetwork": { + "location": "{azure-location}", + "tags": { + "MyTag": "MyValue" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "createdDate": "2018-10-01T13:01:44.6005134-07:00", + "provisioningState": "Creating", + "uniqueIdentifier": "{unique-identifier}" + }, + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}/virtualnetworks/{virtualnetwork-name}", + "name": "{virtualnetwork-name}", + "type": "Microsoft.DevTestLab/labs/virtualNetworks", + "tags": { + "MyTag": "MyValue" + } + } + }, + "201": { + "body": { + "properties": { + "createdDate": "2018-10-01T13:01:44.6005134-07:00", + "provisioningState": "Creating", + "uniqueIdentifier": "{unique-identifier}" + }, + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}/virtualnetworks/{virtualnetwork-name}", + "name": "{virtualnetwork-name}", + "type": "Microsoft.DevTestLab/labs/virtualNetworks", + "tags": { + "MyTag": "MyValue" + } + } + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualNetworks_Delete.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualNetworks_Delete.json new file mode 100644 index 000000000000..045990ab9fa5 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualNetworks_Delete.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "labName": "{devtestlab-name}", + "name": "{virtualnetwork-name}", + "api-version": "2018-10-15-preview" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + }, + "204": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualNetworks_Get.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualNetworks_Get.json new file mode 100644 index 000000000000..7104de5c9cda --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualNetworks_Get.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "labName": "{devtestlab-name}", + "name": "{virtualnetwork-name}", + "api-version": "2018-10-15-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "allowedSubnets": [ + { + "resourceId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{virtualnetwork-name}/subnets/{virtualnetwork-name}Subnet", + "labSubnetName": "{virtualnetwork-name}Subnet", + "allowPublicIp": "Allow" + } + ], + "externalProviderResourceId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{virtualnetwork-name}", + "subnetOverrides": [ + { + "resourceId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{virtualnetwork-name}/subnets/{virtualnetwork-name}Subnet", + "labSubnetName": "{virtualnetwork-name}Subnet", + "useInVmCreationPermission": "Allow", + "usePublicIpAddressPermission": "Allow", + "sharedPublicIpAddressConfiguration": { + "allowedPorts": [ + { + "transportProtocol": "Tcp", + "backendPort": 3389 + }, + { + "transportProtocol": "Tcp", + "backendPort": 22 + } + ] + } + } + ], + "createdDate": "2018-10-01T13:01:44.6005134-07:00", + "provisioningState": "Succeeded", + "uniqueIdentifier": "{unique-identifier}" + }, + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}/virtualnetworks/{virtualnetwork-name}", + "name": "{virtualnetwork-name}", + "type": "Microsoft.DevTestLab/labs/virtualNetworks", + "tags": { + "MyTag": "MyValue" + } + } + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualNetworks_List.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualNetworks_List.json new file mode 100644 index 000000000000..b905f79e2338 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualNetworks_List.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "labName": "{devtestlab-name}", + "api-version": "2018-10-15-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "allowedSubnets": [ + { + "resourceId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{virtualnetwork-name}/subnets/{virtualnetwork-name}Subnet", + "labSubnetName": "{virtualnetwork-name}Subnet", + "allowPublicIp": "Allow" + } + ], + "externalProviderResourceId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{virtualnetwork-name}", + "subnetOverrides": [ + { + "resourceId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{virtualnetwork-name}/subnets/{virtualnetwork-name}Subnet", + "labSubnetName": "{virtualnetwork-name}Subnet", + "useInVmCreationPermission": "Allow", + "usePublicIpAddressPermission": "Allow", + "sharedPublicIpAddressConfiguration": { + "allowedPorts": [ + { + "transportProtocol": "Tcp", + "backendPort": 3389 + }, + { + "transportProtocol": "Tcp", + "backendPort": 22 + } + ] + } + } + ], + "createdDate": "2018-10-01T13:01:44.6005134-07:00", + "provisioningState": "Succeeded", + "uniqueIdentifier": "{unique-identifier}" + }, + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}/virtualnetworks/{virtualnetwork-name}", + "name": "{virtualnetwork-name}", + "type": "Microsoft.DevTestLab/labs/virtualNetworks", + "tags": { + "MyTag": "MyValue" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualNetworks_Update.json b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualNetworks_Update.json new file mode 100644 index 000000000000..d439c40e4cd7 --- /dev/null +++ b/specification/devtestlabs/resource-manager/Microsoft.DevTestLab/stable/2018-09-15/examples/VirtualNetworks_Update.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "labName": "{devtestlab-name}", + "name": "{virtualnetwork-name}", + "api-version": "2018-10-15-preview", + "virtualNetwork": { + "properties": { + "subnetOverrides": [ + { + "resourceId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{virtualnetwork-name}/subnets/{virtualnetwork-name}Subnet", + "useInVmCreationPermission": "Allow", + "usePublicIpAddressPermission": "Deny", + "sharedPublicIpAddressConfiguration": { + "allowedPorts": [ + { + "transportProtocol": "Tcp", + "backendPort": 3389 + }, + { + "transportProtocol": "Tcp", + "backendPort": 22 + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "externalProviderResourceId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{virtualnetwork-name}", + "subnetOverrides": [ + { + "resourceId": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{virtualnetwork-name}/subnets/{virtualnetwork-name}Subnet", + "labSubnetName": "{virtualnetwork-name}Subnet", + "useInVmCreationPermission": "Allow", + "usePublicIpAddressPermission": "Allow", + "sharedPublicIpAddressConfiguration": { + "allowedPorts": [ + { + "transportProtocol": "Tcp", + "backendPort": 3389 + }, + { + "transportProtocol": "Tcp", + "backendPort": 22 + } + ] + } + } + ], + "createdDate": "2018-10-01T13:01:44.6005134-07:00", + "provisioningState": "Succeeded", + "uniqueIdentifier": "{unique-identifier}" + }, + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/microsoft.devtestlab/labs/{devtestlab-name}/virtualnetworks/{virtualnetwork-name}", + "name": "{virtualnetwork-name}", + "type": "Microsoft.DevTestLab/labs/virtualNetworks", + "tags": { + "MyTag": "MyValue" + } + } + } + } +} \ No newline at end of file diff --git a/specification/devtestlabs/resource-manager/readme.go.md b/specification/devtestlabs/resource-manager/readme.go.md index 2aaa918a3746..e5db00b37552 100644 --- a/specification/devtestlabs/resource-manager/readme.go.md +++ b/specification/devtestlabs/resource-manager/readme.go.md @@ -13,10 +13,19 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2018-09 - tag: package-2016-05 - tag: package-2015-05-preview ``` +### Tag: package-2018-09 and go + +These settings apply only when `--tag=package-2018-09 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2018-09-preview' && $(go) +output-folder: $(go-sdk-folder)/services/devtestlabs/mgmt/2015-09-15/$(namespace) +``` ### Tag: package-2016-05 and go diff --git a/specification/devtestlabs/resource-manager/readme.md b/specification/devtestlabs/resource-manager/readme.md index 3edfb48da9d4..5d9e5b5b70ae 100644 --- a/specification/devtestlabs/resource-manager/readme.md +++ b/specification/devtestlabs/resource-manager/readme.md @@ -26,10 +26,19 @@ These are the global settings for the DevTestLab API. ``` yaml openapi-type: arm -tag: package-2016-05 +tag: package-2018-09 ``` +### Tag: package-2018-09 + +These settings apply only when `--tag=package-2018-09` is specified on the command line. + +``` yaml $(tag) == 'package-2018-09' +input-file: +- Microsoft.DevTestLab/stable/2018-09-15/DTL.json +``` + ### Tag: package-2016-05 These settings apply only when `--tag=package-2016-05` is specified on the command line. @@ -134,10 +143,24 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-devtestlabs ``` yaml $(java) && $(multiapi) batch: + - tag: package-2018-09 - tag: package-2016-05 - tag: package-2015-05-preview ``` +### Tag: package-2018-09 and java + +These settings apply only when `--tag=package-2018-09 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2018-09' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.devtestlab.v2018_09_15 + output-folder: $(azure-libraries-for-java-folder)/devtestlab/resource-manager/v2018_09_15 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2016-05 and java These settings apply only when `--tag=package-2016-05 --java` is specified on the command line. diff --git a/specification/devtestlabs/resource-manager/readme.ruby.md b/specification/devtestlabs/resource-manager/readme.ruby.md index 9c3d05b949be..8ce602c508f0 100644 --- a/specification/devtestlabs/resource-manager/readme.ruby.md +++ b/specification/devtestlabs/resource-manager/readme.ruby.md @@ -12,9 +12,20 @@ azure-arm: true ``` yaml $(ruby) && $(multiapi) batch: + - tag: package-2018-09 - tag: package-2016-05 ``` +### Tag: package-2018-09 and ruby + +These settings apply only when `--tag=package-2018-09 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2018-09' && $(ruby) +namespace: "Azure::DevTestLabs::Mgmt::V2018_09_15" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_devtestlabs/lib +``` + ### Tag: package-2016-05 and ruby These settings apply only when `--tag=package-2016-05 --ruby` is specified on the command line. diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-01-01/domainservices.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-01-01/domainservices.json index 921541f8e455..4d1abcce0f8f 100644 --- a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-01-01/domainservices.json +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-01-01/domainservices.json @@ -147,18 +147,14 @@ "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "name": "domainServiceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the domain service in the specified subscription and resource group." + "$ref": "#/parameters/DomainServiceNameParameter" }, { - "name": "properties", + "name": "domainService", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/DomainServiceProperties" + "$ref": "#/definitions/DomainService" }, "description": "Properties supplied to the Create or Update a Domain Service operation." } @@ -208,11 +204,7 @@ "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "name": "domainServiceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the domain service in the specified subscription and resource group." + "$ref": "#/parameters/DomainServiceNameParameter" } ], "responses": { @@ -247,11 +239,7 @@ "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "name": "domainServiceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the domain service in the specified subscription and resource group." + "$ref": "#/parameters/DomainServiceNameParameter" } ], "responses": { @@ -290,18 +278,14 @@ "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "name": "domainServiceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the domain service in the specified subscription and resource group." + "$ref": "#/parameters/DomainServiceNameParameter" }, { - "name": "properties", + "name": "domainService", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/DomainServicePatchProperties" + "$ref": "#/definitions/DomainService" }, "description": "Properties supplied to the Update a Domain Service operation." } @@ -365,9 +349,6 @@ "description": "Resource etag" } }, - "required": [ - "location" - ], "x-ms-azure-resource": true }, "DomainService": { @@ -492,35 +473,6 @@ } } }, - "DomainServicePatchProperties": { - "description": "Update Properties of the Domain Service.", - "properties": { - "ldapsSettings": { - "$ref": "#/definitions/LdapsSettings", - "description": "Secure LDAP Settings" - }, - "notificationSettings": { - "$ref": "#/definitions/NotificationSettings", - "description": "Notification Settings" - }, - "domainSecuritySettings": { - "$ref": "#/definitions/DomainSecuritySettings", - "description": "DomainSecurity Settings" - }, - "filteredSync": { - "type": "string", - "enum": [ - "Enabled", - "Disabled" - ], - "description": "Enabled or Disabled flag to turn on Group-based filtered sync", - "x-ms-enum": { - "name": "filteredSync", - "modelAsString": true - } - } - } - }, "LdapsSettings": { "description": "Secure LDAP Settings", "properties": { @@ -803,6 +755,14 @@ "minLength": 1, "maxLength": 90, "x-ms-parameter-location": "method" + }, + "DomainServiceNameParameter": { + "name": "domainServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the domain service.", + "x-ms-parameter-location": "method" } } } \ No newline at end of file diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-01-01/examples/CreateDomainService.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-01-01/examples/CreateDomainService.json index b20f42e912d9..543eb2165bbb 100644 --- a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-01-01/examples/CreateDomainService.json +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-01-01/examples/CreateDomainService.json @@ -4,26 +4,30 @@ "subscriptionId": "1639790a-76a2-4ac4-98d9-8562f5dfcb4d", "resourceGroupName": "sva-tt-WUS", "domainServiceName": "zdomain.zforest.com", - "location": "westus", - "properties": { - "domainName": "zdomain.zforest.com", - "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/Default-Networking/providers/Microsoft.ClassicNetwork/virtualNetworks/DCIaasTmpWusNet/subnets/Subnet-1", - "domainSecuritySettings": { - "ntlmV1": "Enabled", - "tlsV1": "Disabled", - "syncNtlmPasswords": "Enabled" - }, - "notificationSettings": { - "notifyGlobalAdmins": "Enabled", - "notifyDcAdmins": "Enabled", - "additionalRecipients": [ "jicha@microsoft.com", "caalmont@microsoft.com" ] - }, - "filteredSync": "Enabled", - "ldapsSettings": { - "ldaps": "Enabled", - "pfxCertificate": "MIIDPDCCAiSgAwIBAgIQQUI9P6tq2p9OFIJa7DLNvTANBgkqhkiG9w0BAQsFADAgMR4w...", - "pfxCertificatePassword": "Password01", - "externalAccess": "Enabled" + "domainService": { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/sva-tt-WUS/providers/Microsoft.AAD/domainServices/zdomain.zforest.com", + "location": "westus", + "name": "zdomain.zforest.com", + "properties": { + "domainName": "zdomain.zforest.com", + "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/Default-Networking/providers/Microsoft.ClassicNetwork/virtualNetworks/DCIaasTmpWusNet/subnets/Subnet-1", + "domainSecuritySettings": { + "ntlmV1": "Enabled", + "tlsV1": "Disabled", + "syncNtlmPasswords": "Enabled" + }, + "notificationSettings": { + "notifyGlobalAdmins": "Enabled", + "notifyDcAdmins": "Enabled", + "additionalRecipients": [ "jicha@microsoft.com", "caalmont@microsoft.com" ] + }, + "filteredSync": "Enabled", + "ldapsSettings": { + "ldaps": "Enabled", + "pfxCertificate": "MIIDPDCCAiSgAwIBAgIQQUI9P6tq2p9OFIJa7DLNvTANBgkqhkiG9w0BAQsFADAgMR4w...", + "pfxCertificatePassword": "Password01", + "externalAccess": "Enabled" + } } } }, diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-01-01/examples/UpdateDomainService.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-01-01/examples/UpdateDomainService.json index 80996d72a894..1231c5c52bda 100644 --- a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-01-01/examples/UpdateDomainService.json +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-01-01/examples/UpdateDomainService.json @@ -4,24 +4,28 @@ "subscriptionId": "1639790a-76a2-4ac4-98d9-8562f5dfcb4d", "resourceGroupName": "sva-tt-WUS", "domainServiceName": "zdomain.zforest.com", - "location": "westus", - "properties": { - "domainSecuritySettings": { - "ntlmV1": "Enabled", - "tlsV1": "Disabled", - "syncNtlmPasswords": "Enabled" - }, - "notificationSettings": { - "notifyGlobalAdmins": "Enabled", - "notifyDcAdmins": "Enabled", - "additionalRecipients": [ "jicha@microsoft.com", "caalmont@microsoft.com" ] - }, - "filteredSync": "Enabled", - "ldapsSettings": { - "ldaps": "Enabled", - "pfxCertificate": "MIIDPDCCAiSgAwIBAgIQQUI9P6tq2p9OFIJa7DLNvTANBgkqhkiG9w0BAQsFADAgMR4w...", - "pfxCertificatePassword": "Password01", - "externalAccess": "Enabled" + "domainService": { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/sva-tt-WUS/providers/Microsoft.AAD/domainServices/zdomain.zforest.com", + "location": "westus", + "name": "zdomain.zforest.com", + "properties": { + "domainSecuritySettings": { + "ntlmV1": "Enabled", + "tlsV1": "Disabled", + "syncNtlmPasswords": "Enabled" + }, + "notificationSettings": { + "notifyGlobalAdmins": "Enabled", + "notifyDcAdmins": "Enabled", + "additionalRecipients": [ "jicha@microsoft.com", "caalmont@microsoft.com" ] + }, + "filteredSync": "Enabled", + "ldapsSettings": { + "ldaps": "Enabled", + "pfxCertificate": "MIIDPDCCAiSgAwIBAgIQQUI9P6tq2p9OFIJa7DLNvTANBgkqhkiG9w0BAQsFADAgMR4w...", + "pfxCertificatePassword": "Password01", + "externalAccess": "Enabled" + } } } }, diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-06-01/domainservices.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-06-01/domainservices.json index a99ee09b1b70..efd7d90fc48a 100644 --- a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-06-01/domainservices.json +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-06-01/domainservices.json @@ -147,18 +147,14 @@ "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "name": "domainServiceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the domain service in the specified subscription and resource group." + "$ref": "#/parameters/DomainServiceNameParameter" }, { - "name": "properties", + "name": "domainService", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/DomainServiceProperties" + "$ref": "#/definitions/DomainService" }, "description": "Properties supplied to the Create or Update a Domain Service operation." } @@ -208,11 +204,7 @@ "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "name": "domainServiceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the domain service in the specified subscription and resource group." + "$ref": "#/parameters/DomainServiceNameParameter" } ], "responses": { @@ -247,11 +239,7 @@ "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "name": "domainServiceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the domain service in the specified subscription and resource group." + "$ref": "#/parameters/DomainServiceNameParameter" } ], "responses": { @@ -290,18 +278,14 @@ "$ref": "#/parameters/ResourceGroupNameParameter" }, { - "name": "domainServiceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the domain service in the specified subscription and resource group." + "$ref": "#/parameters/DomainServiceNameParameter" }, { - "name": "properties", + "name": "domainService", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/DomainServicePatchProperties" + "$ref": "#/definitions/DomainService" }, "description": "Properties supplied to the Update a Domain Service operation." } @@ -365,9 +349,6 @@ "description": "Resource etag" } }, - "required": [ - "location" - ], "x-ms-azure-resource": true }, "DomainService": { @@ -492,35 +473,6 @@ } } }, - "DomainServicePatchProperties": { - "description": "Update Properties of the Domain Service.", - "properties": { - "ldapsSettings": { - "$ref": "#/definitions/LdapsSettings", - "description": "Secure LDAP Settings" - }, - "notificationSettings": { - "$ref": "#/definitions/NotificationSettings", - "description": "Notification Settings" - }, - "domainSecuritySettings": { - "$ref": "#/definitions/DomainSecuritySettings", - "description": "DomainSecurity Settings" - }, - "filteredSync": { - "type": "string", - "enum": [ - "Enabled", - "Disabled" - ], - "description": "Enabled or Disabled flag to turn on Group-based filtered sync", - "x-ms-enum": { - "name": "filteredSync", - "modelAsString": true - } - } - } - }, "LdapsSettings": { "description": "Secure LDAP Settings", "properties": { @@ -803,6 +755,14 @@ "minLength": 1, "maxLength": 90, "x-ms-parameter-location": "method" + }, + "DomainServiceNameParameter": { + "name": "domainServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the domain service.", + "x-ms-parameter-location": "method" } } } \ No newline at end of file diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-06-01/examples/CreateDomainService.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-06-01/examples/CreateDomainService.json index a733b630636a..ea349d8ce14c 100644 --- a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-06-01/examples/CreateDomainService.json +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-06-01/examples/CreateDomainService.json @@ -4,26 +4,30 @@ "subscriptionId": "1639790a-76a2-4ac4-98d9-8562f5dfcb4d", "resourceGroupName": "sva-tt-WUS", "domainServiceName": "zdomain.zforest.com", - "location": "westus", - "properties": { - "domainName": "zdomain.zforest.com", - "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/Default-Networking/providers/Microsoft.Network/virtualNetworks/DCIaasTmpWusNet/subnets/Subnet-1", - "domainSecuritySettings": { - "ntlmV1": "Enabled", - "tlsV1": "Disabled", - "syncNtlmPasswords": "Enabled" - }, - "notificationSettings": { - "notifyGlobalAdmins": "Enabled", - "notifyDcAdmins": "Enabled", - "additionalRecipients": [ "jicha@microsoft.com", "caalmont@microsoft.com" ] - }, - "filteredSync": "Enabled", - "ldapsSettings": { - "ldaps": "Enabled", - "pfxCertificate": "MIIDPDCCAiSgAwIBAgIQQUI9P6tq2p9OFIJa7DLNvTANBgkqhkiG9w0BAQsFADAgMR4w...", - "pfxCertificatePassword": "Password01", - "externalAccess": "Enabled" + "domainService": { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/sva-tt-WUS/providers/Microsoft.AAD/domainServices/zdomain.zforest.com", + "location": "westus", + "name": "zdomain.zforest.com", + "properties": { + "domainName": "zdomain.zforest.com", + "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/Default-Networking/providers/Microsoft.Network/virtualNetworks/DCIaasTmpWusNet/subnets/Subnet-1", + "domainSecuritySettings": { + "ntlmV1": "Enabled", + "tlsV1": "Disabled", + "syncNtlmPasswords": "Enabled" + }, + "notificationSettings": { + "notifyGlobalAdmins": "Enabled", + "notifyDcAdmins": "Enabled", + "additionalRecipients": [ "jicha@microsoft.com", "caalmont@microsoft.com" ] + }, + "filteredSync": "Enabled", + "ldapsSettings": { + "ldaps": "Enabled", + "pfxCertificate": "MIIDPDCCAiSgAwIBAgIQQUI9P6tq2p9OFIJa7DLNvTANBgkqhkiG9w0BAQsFADAgMR4w...", + "pfxCertificatePassword": "Password01", + "externalAccess": "Enabled" + } } } }, diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-06-01/examples/UpdateDomainService.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-06-01/examples/UpdateDomainService.json index 5d1d78faff69..af5cf9b20c3c 100644 --- a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-06-01/examples/UpdateDomainService.json +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2017-06-01/examples/UpdateDomainService.json @@ -4,24 +4,28 @@ "subscriptionId": "1639790a-76a2-4ac4-98d9-8562f5dfcb4d", "resourceGroupName": "sva-tt-WUS", "domainServiceName": "zdomain.zforest.com", - "location": "westus", - "properties": { - "domainSecuritySettings": { - "ntlmV1": "Enabled", - "tlsV1": "Disabled", - "syncNtlmPasswords": "Enabled" - }, - "notificationSettings": { - "notifyGlobalAdmins": "Enabled", - "notifyDcAdmins": "Enabled", - "additionalRecipients": [ "jicha@microsoft.com", "caalmont@microsoft.com" ] - }, - "filteredSync": "Enabled", - "ldapsSettings": { - "ldaps": "Enabled", - "pfxCertificate": "MIIDPDCCAiSgAwIBAgIQQUI9P6tq2p9OFIJa7DLNvTANBgkqhkiG9w0BAQsFADAgMR4w...", - "pfxCertificatePassword": "Password01", - "externalAccess": "Enabled" + "domainService": { + "id": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/sva-tt-WUS/providers/Microsoft.AAD/domainServices/zdomain.zforest.com", + "location": "westus", + "name": "zdomain.zforest.com", + "properties": { + "domainSecuritySettings": { + "ntlmV1": "Enabled", + "tlsV1": "Disabled", + "syncNtlmPasswords": "Enabled" + }, + "notificationSettings": { + "notifyGlobalAdmins": "Enabled", + "notifyDcAdmins": "Enabled", + "additionalRecipients": [ "jicha@microsoft.com", "caalmont@microsoft.com" ] + }, + "filteredSync": "Enabled", + "ldapsSettings": { + "ldaps": "Enabled", + "pfxCertificate": "MIIDPDCCAiSgAwIBAgIQQUI9P6tq2p9OFIJa7DLNvTANBgkqhkiG9w0BAQsFADAgMR4w...", + "pfxCertificatePassword": "Password01", + "externalAccess": "Enabled" + } } } }, @@ -96,7 +100,7 @@ "additionalRecipients": [ "jicha@microsoft.com", "caalmont@microsoft.com" ] }, "filteredSync": "Enabled", - "provisioningState": "Accepted" + "provisioningState": "Accepted" } } } diff --git a/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/EngagementFabric.json b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/EngagementFabric.json new file mode 100644 index 000000000000..0f3f01793fb8 --- /dev/null +++ b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/EngagementFabric.json @@ -0,0 +1,1280 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-09-01-preview", + "title": "EngagementFabric", + "description": "Microsoft Customer Engagement Fabric" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EngagementFabric/Accounts/{accountName}": { + "get": { + "tags": [ + "Accounts" + ], + "summary": "Get the EngagementFabric account", + "operationId": "Accounts_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Account" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "AccountsGetExample": { + "$ref": "./examples/AccountsGetExample.json" + } + } + }, + "put": { + "tags": [ + "Accounts" + ], + "summary": "Create or Update the EngagementFabric account", + "operationId": "Accounts_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "name": "account", + "in": "body", + "description": "The EngagementFabric account description", + "required": true, + "schema": { + "$ref": "#/definitions/Account" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Account" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "AccountsCreateOrUpdateExample": { + "$ref": "./examples/AccountsCreateOrUpdateExample.json" + } + } + }, + "delete": { + "tags": [ + "Accounts" + ], + "summary": "Delete the EngagementFabric account", + "operationId": "Accounts_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "AccountsDeleteExample": { + "$ref": "./examples/AccountsDeleteExample.json" + } + } + }, + "patch": { + "tags": [ + "Accounts" + ], + "summary": "Update EngagementFabric account", + "operationId": "Accounts_Update", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "name": "accountPatch", + "in": "body", + "description": "The account patch", + "required": true, + "schema": { + "$ref": "#/definitions/AccountPatch" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Account" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "AccountsUpdateExample": { + "$ref": "./examples/AccountsUpdateExample.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.EngagementFabric/Accounts": { + "get": { + "tags": [ + "Accounts" + ], + "summary": "List the EngagementFabric accounts in given subscription", + "operationId": "Accounts_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AccountList" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "AccountsListExample": { + "$ref": "./examples/AccountsListExample.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EngagementFabric/Accounts": { + "get": { + "tags": [ + "Accounts" + ], + "summary": "List EngagementFabric accounts in given resource group", + "operationId": "Accounts_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AccountList" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "AccountsListByResourceGroupExample": { + "$ref": "./examples/AccountsListByResourceGroupExample.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EngagementFabric/Accounts/{accountName}/listKeys": { + "post": { + "tags": [ + "Accounts" + ], + "summary": "List keys of the EngagementFabric account", + "operationId": "Accounts_ListKeys", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/KeyDescriptionList" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "AccountsListKeysExample": { + "$ref": "./examples/AccountsListKeysExample.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EngagementFabric/Accounts/{accountName}/regenerateKey": { + "post": { + "tags": [ + "Accounts" + ], + "summary": "Regenerate key of the EngagementFabric account", + "operationId": "Accounts_RegenerateKey", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "name": "parameter", + "in": "body", + "description": "Parameters specifying the key to be regenerated", + "required": true, + "schema": { + "$ref": "#/definitions/RegenerateKeyParameter" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/KeyDescription" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "AccountsRegenerateKeyExample": { + "$ref": "./examples/AccountsRegenerateKeyExample.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EngagementFabric/Accounts/{accountName}/listChannelTypes": { + "post": { + "tags": [ + "Accounts" + ], + "summary": "List available EngagementFabric channel types and functions", + "operationId": "Accounts_ListChannelTypes", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ChannelTypeDescriptionList" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "AccountsListChannelTypesExample": { + "$ref": "./examples/AccountsListChannelTypesExample.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EngagementFabric/Accounts/{accountName}/Channels/{channelName}": { + "get": { + "tags": [ + "Channels" + ], + "summary": "Get the EngagementFabric channel", + "operationId": "Channels_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ChannelNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Channel" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ChannelsGetExample": { + "$ref": "./examples/ChannelsGetExample.json" + } + } + }, + "put": { + "tags": [ + "Channels" + ], + "summary": "Create or Update the EngagementFabric channel", + "operationId": "Channels_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ChannelNameParameter" + }, + { + "name": "channel", + "in": "body", + "description": "The EngagementFabric channel description", + "required": true, + "schema": { + "$ref": "#/definitions/Channel" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Channel" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ChannelsCreateOrUpdateExample": { + "$ref": "./examples/ChannelsCreateOrUpdateExample.json" + } + } + }, + "delete": { + "tags": [ + "Channels" + ], + "summary": "Delete the EngagementFabric channel", + "operationId": "Channels_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "name": "channelName", + "in": "path", + "description": "The EngagementFabric channel name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ChannelsDeleteExample": { + "$ref": "./examples/ChannelsDeleteExample.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EngagementFabric/Accounts/{accountName}/Channels": { + "get": { + "tags": [ + "Channels" + ], + "summary": "List the EngagementFabric channels", + "operationId": "Channels_ListByAccount", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ChannelList" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ChannelsListExample": { + "$ref": "./examples/ChannelsListExample.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EngagementFabric/checkNameAvailability": { + "post": { + "tags": [ + "NameAvailability" + ], + "summary": "Check availability of EngagementFabric resource", + "operationId": "CheckNameAvailability", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "Parameter describing the name to be checked", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityParameter" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResult" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CheckNameAvailabilityExample": { + "$ref": "./examples/CheckNameAvailabilityExample.json" + } + } + } + }, + "/providers/Microsoft.EngagementFabric/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "List operation of EngagementFabric resources", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationList" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "OperationsListExample": { + "$ref": "./examples/OperationsListExample.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.EngagementFabric/skus": { + "get": { + "tags": [ + "Skus" + ], + "summary": "List available SKUs of EngagementFabric resource", + "operationId": "SKUs_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SkuDescriptionList" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "SKUsListExample": { + "$ref": "./examples/SKUsListExample.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "SKU": { + "description": "The EngagementFabric SKU", + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "description": "The name of the SKU", + "type": "string" + }, + "tier": { + "description": "The price tier of the SKU", + "type": "string" + } + } + }, + "Resource": { + "description": "The base model for Azure resource", + "type": "object", + "properties": { + "id": { + "description": "The ID of the resource", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The fully qualified type of the resource", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "TrackedResource": { + "description": "The base model for the tracked Azure resource", + "required": [ + "location", + "sku" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "The location of the resource", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "description": "The tags of the resource", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/SKU", + "description": "The SKU of the resource" + } + } + }, + "Account": { + "description": "The EngagementFabric account", + "required": [ + "location", + "sku" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ] + }, + "CloudError": { + "description": "The default error response", + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "Content of the error" + } + }, + "x-ms-external": true + }, + "CloudErrorBody": { + "description": "Content of the default error response", + "type": "object", + "properties": { + "code": { + "description": "The error code", + "type": "string" + }, + "message": { + "description": "The error message", + "type": "string" + }, + "target": { + "description": "The target of the particular error", + "type": "string" + }, + "details": { + "description": "The list of additional details", + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + } + } + }, + "x-ms-external": true + }, + "AccountPatch": { + "description": "The patch of EngagementFabric account", + "type": "object", + "properties": { + "tags": { + "description": "The tags of the resource", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "AccountList": { + "description": "The list of the EngagementFabric accounts", + "type": "object", + "properties": { + "value": { + "description": "EngagementFabric accounts", + "type": "array", + "items": { + "$ref": "#/definitions/Account" + } + } + } + }, + "KeyDescriptionList": { + "description": "The list of the EngagementFabric account keys", + "type": "object", + "properties": { + "value": { + "description": "Account keys", + "type": "array", + "items": { + "$ref": "#/definitions/KeyDescription" + }, + "readOnly": true + } + } + }, + "KeyDescription": { + "description": "The description of the EngagementFabric account key", + "type": "object", + "properties": { + "name": { + "description": "The name of the key", + "type": "string", + "readOnly": true + }, + "rank": { + "$ref": "#/definitions/KeyRank", + "description": "The rank of the key", + "readOnly": true + }, + "value": { + "description": "The value of the key", + "type": "string", + "readOnly": true + } + } + }, + "RegenerateKeyParameter": { + "description": "The parameter to regenerate single EngagementFabric account key", + "required": [ + "name", + "rank" + ], + "type": "object", + "properties": { + "name": { + "description": "The name of key to be regenerated", + "type": "string" + }, + "rank": { + "$ref": "#/definitions/KeyRank", + "description": "The rank of the key to be regenerated" + } + } + }, + "ChannelTypeDescriptionList": { + "description": "List of the EngagementFabric channel descriptions", + "type": "object", + "properties": { + "value": { + "description": "Channel descriptions", + "type": "array", + "items": { + "$ref": "#/definitions/ChannelTypeDescription" + } + } + } + }, + "ChannelTypeDescription": { + "description": "EngagementFabric channel description", + "type": "object", + "properties": { + "channelType": { + "description": "Channel type", + "type": "string" + }, + "channelDescription": { + "description": "Text description for the channel", + "type": "string" + }, + "channelFunctions": { + "description": "All the available functions for the channel", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ChannelProperties": { + "description": "The EngagementFabric channel properties", + "required": [ + "channelType" + ], + "type": "object", + "properties": { + "channelType": { + "description": "The channel type", + "type": "string" + }, + "channelFunctions": { + "description": "The functions to be enabled for the channel", + "type": "array", + "items": { + "type": "string" + } + }, + "credentials": { + "description": "The channel credentials", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ProxyOnlyResource": { + "description": "The base model for the proxy-only Azure resource", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "Channel": { + "description": "The EngagementFabric channel", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ChannelProperties", + "description": "The properties of the channel", + "x-ms-client-flatten": true + } + } + }, + "ChannelList": { + "description": "The list of the EngagementFabric channels", + "type": "object", + "properties": { + "value": { + "description": "EngagementFabric channels", + "type": "array", + "items": { + "$ref": "#/definitions/Channel" + } + } + } + }, + "CheckNameAvailabilityParameter": { + "description": "The parameter for name availability check", + "required": [ + "name", + "type" + ], + "type": "object", + "properties": { + "name": { + "description": "The name to be checked", + "type": "string" + }, + "type": { + "description": "The fully qualified resource type for the name to be checked", + "type": "string" + } + } + }, + "CheckNameAvailabilityResult": { + "description": "The result of name availability check", + "type": "object", + "properties": { + "nameAvailable": { + "description": "The name to be checked", + "type": "boolean", + "readOnly": true + }, + "reason": { + "$ref": "#/definitions/CheckNameUnavailableReason", + "description": "The reason if name is unavailable", + "readOnly": true + }, + "message": { + "description": "The message if name is unavailable", + "type": "string", + "readOnly": true + } + } + }, + "OperationList": { + "description": "The list of the EngagementFabric operations", + "type": "object", + "properties": { + "value": { + "description": "The EngagementFabric operations", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "readOnly": true + } + } + }, + "Operation": { + "description": "The EngagementFabric operation", + "type": "object", + "properties": { + "name": { + "description": "The name of the EngagementFabric operation", + "type": "string", + "readOnly": true + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "description": "The display content of the EngagementFabric operation", + "readOnly": true + } + } + }, + "OperationDisplay": { + "description": "The display information of the EngagementFabric operation", + "type": "object", + "properties": { + "provider": { + "description": "The resource provider namespace of the EngagementFabric operation", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "The resource type of the EngagementFabric operation", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The name of the EngagementFabric operation", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description of the EngagementFabric operation", + "type": "string", + "readOnly": true + } + } + }, + "SkuDescriptionList": { + "description": "The list of the EngagementFabric SKU descriptions", + "type": "object", + "properties": { + "value": { + "description": "SKU descriptions", + "type": "array", + "items": { + "$ref": "#/definitions/SkuDescription" + }, + "readOnly": true + } + } + }, + "SkuDescription": { + "description": "The EngagementFabric SKU description of given resource type", + "type": "object", + "properties": { + "resourceType": { + "description": "The fully qualified resource type", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the SKU", + "type": "string", + "readOnly": true + }, + "tier": { + "description": "The price tier of the SKU", + "type": "string", + "readOnly": true + }, + "locations": { + "description": "The set of locations that the SKU is available", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "locationInfo": { + "description": "Locations and zones", + "type": "array", + "items": { + "$ref": "#/definitions/SkuLocationInfoItem" + }, + "readOnly": true + }, + "restrictions": { + "description": "The restrictions because of which SKU cannot be used", + "type": "array", + "items": { + "type": "object" + }, + "readOnly": true + } + } + }, + "SkuLocationInfoItem": { + "description": "The Locations and zones info for SKU", + "type": "object", + "properties": { + "location": { + "description": "The available location of the SKU", + "type": "string" + }, + "zones": { + "description": "The available zone of the SKU", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "KeyRank": { + "description": "The rank of the EngagementFabric account key", + "enum": [ + "PrimaryKey", + "SecondaryKey" + ], + "type": "string", + "x-ms-enum": { + "name": "KeyRank", + "modelAsString": true + } + }, + "CheckNameUnavailableReason": { + "description": "The reason of name availability result", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "type": "string", + "x-ms-enum": { + "name": "CheckNameUnavailableReason", + "modelAsString": true + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Subscription ID", + "required": true, + "type": "string" + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AccountNameParameter": { + "name": "accountName", + "in": "path", + "description": "Account Name", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ChannelNameParameter": { + "name": "channelName", + "in": "path", + "description": "Channel Name", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API version", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsCreateOrUpdateExample.json b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsCreateOrUpdateExample.json new file mode 100644 index 000000000000..0ff2ae0fa1c1 --- /dev/null +++ b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsCreateOrUpdateExample.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "EDBF0095-A524-4A84-95FB-F72DA41AA6A1", + "resourceGroupName": "ExampleRg", + "accountName": "ExampleAccount", + "api-version": "2018-09-01-preview", + "account": { + "location": "WestUS", + "sku": { + "name": "B1" + } + } + }, + "responses": { + "200": { + "body": { + "location": "WestUS", + "sku": { + "name": "B1", + "tier": "Basic" + }, + "id": "subscriptions/EDBF0095-A524-4A84-95FB-F72DA41AA6A1/resourceGroups/ExampleRg/providers/Microsoft.EngagementFabric/Accounts/ExampleAccount", + "name": "ExampleAccount", + "type": "Microsoft.EngagementFabric/Accounts" + } + } + } +} \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsDeleteExample.json b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsDeleteExample.json new file mode 100644 index 000000000000..18383bf9c693 --- /dev/null +++ b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsDeleteExample.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "EDBF0095-A524-4A84-95FB-F72DA41AA6A1", + "resourceGroupName": "ExampleRg", + "accountName": "ExampleAccount", + "api-version": "2018-09-01-preview" + }, + "responses": { + "200": {} + } +} \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsGetExample.json b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsGetExample.json new file mode 100644 index 000000000000..b5efaaa01572 --- /dev/null +++ b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsGetExample.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "EDBF0095-A524-4A84-95FB-F72DA41AA6A1", + "resourceGroupName": "ExampleRg", + "accountName": "ExampleAccount", + "api-version": "2018-09-01-preview" + }, + "responses": { + "200": { + "body": { + "location": "WestUS", + "sku": { + "name": "B1", + "tier": "Basic" + }, + "id": "subscriptions/EDBF0095-A524-4A84-95FB-F72DA41AA6A1/resourceGroups/ExampleRg/providers/Microsoft.EngagementFabric/Accounts/ExampleAccount", + "name": "ExampleAccount", + "type": "Microsoft.EngagementFabric/Accounts" + } + } + } +} \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsListByResourceGroupExample.json b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsListByResourceGroupExample.json new file mode 100644 index 000000000000..2fb6fec5f08d --- /dev/null +++ b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsListByResourceGroupExample.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "EDBF0095-A524-4A84-95FB-F72DA41AA6A1", + "resourceGroupName": "ExampleRg", + "api-version": "2018-09-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "WestUS", + "sku": { + "name": "B1", + "tier": "Basic" + }, + "id": "subscriptions/EDBF0095-A524-4A84-95FB-F72DA41AA6A1/resourceGroups/ExampleRg/providers/Microsoft.EngagementFabric/Accounts/ExampleAccount", + "name": "ExampleAccount", + "type": "Microsoft.EngagementFabric/Accounts" + }, + { + "location": "WestUS", + "sku": { + "name": "S1", + "tier": "Standard" + }, + "id": "subscriptions/EDBF0095-A524-4A84-95FB-F72DA41AA6A1/resourceGroups/ExampleRg/providers/Microsoft.EngagementFabric/Accounts/ExampleAccount2", + "name": "ExampleAccount2", + "type": "Microsoft.EngagementFabric/Accounts" + }, + { + "location": "WestUS", + "sku": { + "name": "P1", + "tier": "Premium" + }, + "id": "subscriptions/EDBF0095-A524-4A84-95FB-F72DA41AA6A1/resourceGroups/ExampleRg/providers/Microsoft.EngagementFabric/Accounts/ExampleAccount3", + "name": "ExampleAccount3", + "type": "Microsoft.EngagementFabric/Accounts" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsListChannelTypesExample.json b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsListChannelTypesExample.json new file mode 100644 index 000000000000..55ca1947f54a --- /dev/null +++ b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsListChannelTypesExample.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "EDBF0095-A524-4A84-95FB-F72DA41AA6A1", + "resourceGroupName": "ExampleRg", + "accountName": "ExampleAccount", + "api-version": "2018-09-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "channelType": "MockChannel1", + "channelDescription": "Description of mockChannel1", + "channelFunctions": [ + "MockFunction1", + "MockFunction2" + ] + }, + { + "channelType": "MockChannel2", + "channelDescription": "Description of mockChannel2", + "channelFunctions": [ + "MockFunction1", + "MockFunction3" + ] + }, + { + "channelType": "MockChannel3", + "channelDescription": "Description of mockChannel3", + "channelFunctions": [ + "MockFunction1", + "MockFunction2", + "MockFunction3" + ] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsListExample.json b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsListExample.json new file mode 100644 index 000000000000..df252196096f --- /dev/null +++ b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsListExample.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "EDBF0095-A524-4A84-95FB-F72DA41AA6A1", + "api-version": "2018-09-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "WestUS", + "sku": { + "name": "B1", + "tier": "Basic" + }, + "id": "subscriptions/EDBF0095-A524-4A84-95FB-F72DA41AA6A1/resourceGroups/ExampleRg/providers/Microsoft.EngagementFabric/Accounts/ExampleAccount", + "name": "ExampleAccount", + "type": "Microsoft.EngagementFabric/Accounts" + }, + { + "location": "WestUS", + "sku": { + "name": "S1", + "tier": "Standard" + }, + "id": "subscriptions/EDBF0095-A524-4A84-95FB-F72DA41AA6A1/resourceGroups/ExampleRg/providers/Microsoft.EngagementFabric/Accounts/ExampleAccount2", + "name": "ExampleAccount2", + "type": "Microsoft.EngagementFabric/Accounts" + }, + { + "location": "WestUS", + "sku": { + "name": "P1", + "tier": "Premium" + }, + "id": "subscriptions/EDBF0095-A524-4A84-95FB-F72DA41AA6A1/resourceGroups/ExampleRg/providers/Microsoft.EngagementFabric/Accounts/ExampleAccount3", + "name": "ExampleAccount3", + "type": "Microsoft.EngagementFabric/Accounts" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsListKeysExample.json b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsListKeysExample.json new file mode 100644 index 000000000000..b4068d389f9f --- /dev/null +++ b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsListKeysExample.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "EDBF0095-A524-4A84-95FB-F72DA41AA6A1", + "resourceGroupName": "ExampleRg", + "accountName": "ExampleAccount", + "api-version": "2018-09-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Full", + "rank": "PrimaryKey", + "value": "" + }, + { + "name": "Full", + "rank": "SecondaryKey", + "value": "" + }, + { + "name": "Device", + "rank": "PrimaryKey", + "value": "" + }, + { + "name": "Device", + "rank": "SecondaryKey", + "value": "" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsRegenerateKeyExample.json b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsRegenerateKeyExample.json new file mode 100644 index 000000000000..7be181bd6dc9 --- /dev/null +++ b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsRegenerateKeyExample.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "EDBF0095-A524-4A84-95FB-F72DA41AA6A1", + "resourceGroupName": "ExampleRg", + "accountName": "ExampleAccount", + "api-version": "2018-09-01-preview", + "name": "Full", + "rank": "PrimaryKey" + }, + "responses": { + "200": { + "body": { + "name": "Full", + "rank": "PrimaryKey", + "value": "" + } + } + } +} \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsUpdateExample.json b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsUpdateExample.json new file mode 100644 index 000000000000..84b2fa0c8497 --- /dev/null +++ b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/AccountsUpdateExample.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "EDBF0095-A524-4A84-95FB-F72DA41AA6A1", + "resourceGroupName": "ExampleRg", + "accountName": "ExampleAccount", + "api-version": "2018-09-01-preview", + "accountPatch": { + "tags": { + "tagName": "tagValue" + } + } + }, + "responses": { + "200": { + "body": { + "location": "WestUS", + "tags": { + "tagName": "tagValue" + }, + "sku": { + "name": "B1", + "tier": "Basic" + }, + "id": "subscriptions/EDBF0095-A524-4A84-95FB-F72DA41AA6A1/resourceGroups/ExampleRg/providers/Microsoft.EngagementFabric/Accounts/ExampleAccount", + "name": "ExampleAccount", + "type": "Microsoft.EngagementFabric/Accounts" + } + } + } +} \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/ChannelsCreateOrUpdateExample.json b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/ChannelsCreateOrUpdateExample.json new file mode 100644 index 000000000000..fcb3560aeb3e --- /dev/null +++ b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/ChannelsCreateOrUpdateExample.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "EDBF0095-A524-4A84-95FB-F72DA41AA6A1", + "resourceGroupName": "ExampleRg", + "accountName": "ExampleAccount", + "channelName": "ExampleChannel", + "api-version": "2018-09-01-preview", + "channel": { + "properties": { + "channelType": "MockChannel", + "channelFunctions": [ + "MockFunction1", + "MockFunction2" + ], + "credentials": { + "AppId": "exampleApp", + "AppKey": "exampleAppKey" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "channelType": "MockChannel", + "channelFunctions": [ + "MockFunction1", + "MockFunction2" + ], + "credentials": { + "AppId": "exampleApp", + "AppKey": "" + } + }, + "id": "subscriptions/EDBF0095-A524-4A84-95FB-F72DA41AA6A1/resourceGroups/ExampleRg/providers/Microsoft.EngagementFabric/Accounts/ExampleAccount/Channels/ExampleChannel", + "name": "ExampleChannel", + "type": "Microsoft.EngagementFabric/Accounts/Channels" + } + } + } +} \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/ChannelsDeleteExample.json b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/ChannelsDeleteExample.json new file mode 100644 index 000000000000..554f188988cd --- /dev/null +++ b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/ChannelsDeleteExample.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "EDBF0095-A524-4A84-95FB-F72DA41AA6A1", + "resourceGroupName": "ExampleRg", + "accountName": "ExampleAccount", + "channelName": "ExampleChannel", + "api-version": "2018-09-01-preview" + }, + "responses": { + "200": {} + } +} \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/ChannelsGetExample.json b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/ChannelsGetExample.json new file mode 100644 index 000000000000..f653585d53fe --- /dev/null +++ b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/ChannelsGetExample.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "EDBF0095-A524-4A84-95FB-F72DA41AA6A1", + "resourceGroupName": "ExampleRg", + "accountName": "ExampleAccount", + "channelName": "ExampleChannel", + "api-version": "2018-09-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "channelType": "MockChannel", + "channelFunctions": [ + "MockFunction1", + "MockFunction2" + ], + "credentials": { + "AppId": "exampleApp", + "AppKey": "" + } + }, + "id": "subscriptions/EDBF0095-A524-4A84-95FB-F72DA41AA6A1/resourceGroups/ExampleRg/providers/Microsoft.EngagementFabric/Accounts/ExampleAccount/Channels/ExampleChannel", + "name": "ExampleChannel", + "type": "Microsoft.EngagementFabric/Accounts/Channels" + } + } + } +} \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/ChannelsListExample.json b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/ChannelsListExample.json new file mode 100644 index 000000000000..b364e7818c94 --- /dev/null +++ b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/ChannelsListExample.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "EDBF0095-A524-4A84-95FB-F72DA41AA6A1", + "resourceGroupName": "ExampleRg", + "accountName": "ExampleAccount", + "api-version": "2018-09-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "channelType": "MockChannel", + "channelFunctions": [ + "MockFunction1", + "MockFunction2" + ], + "credentials": { + "AppId": "exampleApp", + "AppKey": "" + } + }, + "id": "subscriptions/EDBF0095-A524-4A84-95FB-F72DA41AA6A1/resourceGroups/ExampleRg/providers/Microsoft.EngagementFabric/Accounts/ExampleAccount/Channels/ExampleChannel", + "name": "ExampleChannel", + "type": "Microsoft.EngagementFabric/Accounts/Channels" + }, + { + "properties": { + "channelType": "MockChannel2", + "channelFunctions": [ + "MockFunction1", + "MockFunction3" + ], + "credentials": { + "AppId": "exampleApp2", + "AppKey": "" + } + }, + "id": "subscriptions/EDBF0095-A524-4A84-95FB-F72DA41AA6A1/resourceGroups/ExampleRg/providers/Microsoft.EngagementFabric/Accounts/ExampleAccount/Channels/ExampleChannel2", + "name": "ExampleChannel2", + "type": "Microsoft.EngagementFabric/Accounts/Channels" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/CheckNameAvailabilityExample.json b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/CheckNameAvailabilityExample.json new file mode 100644 index 000000000000..355462f31134 --- /dev/null +++ b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/CheckNameAvailabilityExample.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "EDBF0095-A524-4A84-95FB-F72DA41AA6A1", + "api-version": "2018-09-01-preview", + "name": "ExampleAccount", + "type": "Microsoft.EngagementFabric/Accounts" + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "Account 'ExampleAccount' already exists" + } + } + } +} \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/OperationsListExample.json b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/OperationsListExample.json new file mode 100644 index 000000000000..7b2548520167 --- /dev/null +++ b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/OperationsListExample.json @@ -0,0 +1,121 @@ +{ + "parameters": { + "api-version": "2018-09-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.EngagementFabric/Accounts/read", + "display": { + "provider": "Microsoft Customer Engagement Fabric", + "resource": "Accounts", + "operation": "List or get the EngagementFabric account", + "description": "List or get the EngagementFabric account" + } + }, + { + "name": "Microsoft.EngagementFabric/Accounts/write", + "display": { + "provider": "Microsoft Customer Engagement Fabric", + "resource": "Accounts", + "operation": "Create or update the EngagementFabric account", + "description": "Create or update the EngagementFabric account" + } + }, + { + "name": "Microsoft.EngagementFabric/Accounts/delete", + "display": { + "provider": "Microsoft Customer Engagement Fabric", + "resource": "Accounts", + "operation": "Delete the EngagementFabric account", + "description": "Delete the EngagementFabric account" + } + }, + { + "name": "Microsoft.EngagementFabric/Accounts/ListKeys/action", + "display": { + "provider": "Microsoft Customer Engagement Fabric", + "resource": "Accounts", + "operation": "Get all keys of the EngagementFabric account", + "description": "Get all keys of the EngagementFabric account" + } + }, + { + "name": "Microsoft.EngagementFabric/Accounts/RegenerateKey/action", + "display": { + "provider": "Microsoft Customer Engagement Fabric", + "resource": "Accounts", + "operation": "Regenerate the EngagementFabric account key", + "description": "Regenerate the EngagementFabric account key" + } + }, + { + "name": "Microsoft.EngagementFabric/Accounts/ListChannelTypes/action", + "display": { + "provider": "Microsoft Customer Engagement Fabric", + "resource": "Accounts", + "operation": "List available EngagementFabric channel types and functions", + "description": "List available EngagementFabric channel types and functions" + } + }, + { + "name": "Microsoft.EngagementFabric/Accounts/Channels/read", + "display": { + "provider": "Microsoft Customer Engagement Fabric", + "resource": "Channels", + "operation": "List or get the EngagementFabric channel", + "description": "List or get the EngagementFabric channel" + } + }, + { + "name": "Microsoft.EngagementFabric/Accounts/Channels/write", + "display": { + "provider": "Microsoft Customer Engagement Fabric", + "resource": "Channels", + "operation": "Create or update the EngagementFabric channel", + "description": "Create or update the EngagementFabric channel" + } + }, + { + "name": "Microsoft.EngagementFabric/Accounts/Channels/delete", + "display": { + "provider": "Microsoft Customer Engagement Fabric", + "resource": "Channels", + "operation": "Delete the EngagementFabric channel", + "description": "Delete the EngagementFabric channel" + } + }, + { + "name": "Microsoft.EngagementFabric/checkNameAvailability/action", + "display": { + "provider": "Microsoft Customer Engagement Fabric", + "resource": "Accounts", + "operation": "Check name availability", + "description": "Check name availability" + } + }, + { + "name": "Microsoft.EngagementFabric/operations/read", + "display": { + "provider": "Microsoft Customer Engagement Fabric", + "resource": "Operations", + "operation": "List available operations", + "description": "List available operations" + } + }, + { + "name": "Microsoft.EngagementFabric/skus/read", + "display": { + "provider": "Microsoft Customer Engagement Fabric", + "resource": "Accounts", + "operation": "List available SKUs", + "description": "List available SKUs" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/SKUsListExample.json b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/SKUsListExample.json new file mode 100644 index 000000000000..d96c97992f11 --- /dev/null +++ b/specification/engagementfabric/resource-manager/Microsoft.EngagementFabric/preview/2018-09-01/examples/SKUsListExample.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "subscriptionId": "EDBF0095-A524-4A84-95FB-F72DA41AA6A1", + "api-version": "2018-09-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "Microsoft.EngagementFabric/Accounts", + "name": "B1", + "tier": "Basic", + "locations": [ + "Central US", + "North Europe", + "West Europe" + ], + "locationInfo": [ + { + "location": "Central US" + }, + { + "location": "North Europe" + }, + { + "location": "West Europe" + } + ], + "restrictions": [] + }, + { + "resourceType": "Microsoft.EngagementFabric/Accounts", + "name": "S1", + "tier": "Standard", + "locations": [ + "Central US", + "North Europe", + "West Europe" + ], + "locationInfo": [ + { + "location": "Central US" + }, + { + "location": "North Europe" + }, + { + "location": "West Europe" + } + ], + "restrictions": [] + }, + { + "resourceType": "Microsoft.EngagementFabric/Accounts", + "name": "P1", + "tier": "Premium", + "locations": [ + "Central US", + "North Europe", + "West Europe" + ], + "locationInfo": [ + { + "location": "Central US" + }, + { + "location": "North Europe" + }, + { + "location": "West Europe" + } + ], + "restrictions": [] + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/readme.go.md b/specification/engagementfabric/resource-manager/readme.go.md new file mode 100644 index 000000000000..c7fb7ff921f9 --- /dev/null +++ b/specification/engagementfabric/resource-manager/readme.go.md @@ -0,0 +1,26 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +``` yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + namespace: engagementfabric + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2018-09-preview +``` + +### Tag: package-2018-09-preview and go + +These settings apply only when `--tag=package-2018-09-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2018-09-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2018-09-01/$(namespace) +``` diff --git a/specification/engagementfabric/resource-manager/readme.md b/specification/engagementfabric/resource-manager/readme.md new file mode 100644 index 000000000000..2d491db5a1ce --- /dev/null +++ b/specification/engagementfabric/resource-manager/readme.md @@ -0,0 +1,124 @@ +# EngagementFabric + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Azure Engagement Fabric. + + + +--- +## Getting Started +To build the SDK for Azure Engagement Fabric, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` +--- + +## Configuration + + + +### Basic Information +These are the global settings for the Azure Engagement Fabric API. + +``` yaml +openapi-type: arm +tag: package-2018-09-preview +``` + + +### Tag: package-2018-09-preview + +These settings apply only when `--tag=package-2018-09-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2018-09-preview' +input-file: +- Microsoft.EngagementFabric/preview/2018-09-01/EngagementFabric.json +``` + + +--- +# Code Generation + + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-python + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-node + - repo: azure-sdk-for-ruby + after_scripts: + - bundle install && rake arm:regen_all_profiles['azure_mgmt_engagement_fabric'] +``` + + +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +``` yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Microsoft.Azure.Management.EngagementFabric + output-folder: $(csharp-sdks-folder)/EngagementFabric/Management.EngagementFabric/Generated + clear-output-folder: true +``` + + +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +``` yaml $(python) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.engagementfabric + package-name: azure-mgmt-engagementfabric + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-mgmt-engagementfabric/azure/mgmt/engagementfabric +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/azure-mgmt-engagementfabric +``` + + +## Go + +See configuration in [readme.go.md](./readme.go.md) + + +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.engagementfabric +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-engagementfabric +``` \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/readme.nodejs.md b/specification/engagementfabric/resource-manager/readme.nodejs.md new file mode 100644 index 000000000000..07412c03c3e4 --- /dev/null +++ b/specification/engagementfabric/resource-manager/readme.nodejs.md @@ -0,0 +1,15 @@ +## Node.js + +These settings apply only when `--nodejs` is specified on the command line. +Please also specify `--node-sdks-folder=`. + +``` yaml $(nodejs) +nodejs: + azure-arm: true + package-name: azure-arm-engagementfabric + package-version: 1.0.0-preview + output-folder: $(node-sdks-folder)/lib/services/engagementFabricManagement + generate-license-txt: true + generate-package-json: true + generate-readme-md: true +``` \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/readme.ruby.md b/specification/engagementfabric/resource-manager/readme.ruby.md new file mode 100644 index 000000000000..c95bcf0ca4d3 --- /dev/null +++ b/specification/engagementfabric/resource-manager/readme.ruby.md @@ -0,0 +1,19 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +``` yaml +package-name: azure_mgmt_engagementfabric +package-version: "0.16.1" +azure-arm: true +``` + +### Tag: package-2018-09-preview and ruby + +These settings apply only when `--tag=package-2018-09-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2018-09-preview' && $(ruby) +namespace: "Azure::EngagementFabric::Mgmt::V2018_09_01_preview" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_engagementfabric/lib +``` \ No newline at end of file diff --git a/specification/engagementfabric/resource-manager/readme.typescript.md b/specification/engagementfabric/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..d0aac6a76647 --- /dev/null +++ b/specification/engagementfabric/resource-manager/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +``` yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/arm-engagementfabric" + output-folder: "$(typescript-sdks-folder)/packages/@azure/arm-engagementfabric" + payload-flattening-threshold: 1 + generate-metadata: true +``` diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/EventHub-preview.json b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/EventHub-preview.json index 29eaa54e5fd3..f7f1fdfe35ea 100644 --- a/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/EventHub-preview.json +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/preview/2018-01-01-preview/EventHub-preview.json @@ -410,7 +410,7 @@ } }, "200": { - "description": "Namespace successfuly created.", + "description": "Namespace successfully created.", "schema": { "$ref": "#/definitions/EHNamespace" } @@ -453,7 +453,7 @@ "description": "No content." }, "200": { - "description": "Namespace successfuly deleted." + "description": "Namespace successfully deleted." }, "202": { "description": "Namespace delete request accepted." @@ -546,7 +546,7 @@ } }, "200": { - "description": "Namespace successfuly updated.", + "description": "Namespace successfully updated.", "schema": { "$ref": "#/definitions/EHNamespace" } @@ -1158,7 +1158,7 @@ "type": "integer", "maximum": 20, "minimum": 0, - "description": "Upper limit of throughput units when AutoInflate is enabled, vaule should be within 0 to 20 throughput units. ( '0' if AutoInflateEnabled = true)" + "description": "Upper limit of throughput units when AutoInflate is enabled, value should be within 0 to 20 throughput units. ( '0' if AutoInflateEnabled = true)" }, "kafkaEnabled": { "type": "boolean", @@ -1210,7 +1210,7 @@ "maximum": 20, "minimum": 0, "type": "integer", - "description": "The Event Hubs throughput units, vaule should be 0 to 20 throughput units." + "description": "The Event Hubs throughput units, value should be 0 to 20 throughput units." } }, "required": [ diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2014-09-01/EventHub.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2014-09-01/EventHub.json index 6d6936076925..dcc80378a9db 100644 --- a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2014-09-01/EventHub.json +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2014-09-01/EventHub.json @@ -224,7 +224,7 @@ } }, "200": { - "description": "Namespace successfuly created.", + "description": "Namespace successfully created.", "schema": { "$ref": "#/definitions/NamespaceResource" } @@ -260,7 +260,7 @@ "description": "No content." }, "200": { - "description": "Namespace successfuly deleted." + "description": "Namespace successfully deleted." }, "202": { "description": "Namespace delete request accepted." @@ -340,7 +340,7 @@ } }, "200": { - "description": "Namespace successfuly updated.", + "description": "Namespace successfully updated.", "schema": { "$ref": "#/definitions/NamespaceResource" } diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/EventHub.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/EventHub.json index 36430aff1d23..c89708b4a04d 100644 --- a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/EventHub.json +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/EventHub.json @@ -205,7 +205,7 @@ } }, "200": { - "description": "Namespace successfuly created.", + "description": "Namespace successfully created.", "schema": { "$ref": "#/definitions/NamespaceResource" } @@ -244,7 +244,7 @@ "description": "No content." }, "200": { - "description": "Namespace successfuly deleted." + "description": "Namespace successfully deleted." }, "202": { "description": "Namespace delete request accepted." @@ -330,7 +330,7 @@ } }, "200": { - "description": "Namespace successfuly updated.", + "description": "Namespace successfully updated.", "schema": { "$ref": "#/definitions/NamespaceResource" } @@ -348,7 +348,7 @@ ], "operationId": "Namespaces_ListAuthorizationRules", "x-ms-examples": { - "ListAuthorizationRules": { "$ref": "./examples/EHNameSpaceAutorizationRuleListAll.json" } + "ListAuthorizationRules": { "$ref": "./examples/EHNameSpaceAuthorizationRuleListAll.json" } }, "description": "Gets a list of authorization rules for a Namespace.", "parameters": [ @@ -429,7 +429,7 @@ ], "operationId": "Namespaces_DeleteAuthorizationRule", "x-ms-examples": { - "NameSpaceAutorizationRuleDelete": { "$ref": "./examples/EHNameSpaceAutorizationRuleDelete.json" } + "NameSpaceAuthorizationRuleDelete": { "$ref": "./examples/EHNameSpaceAuthorizationRuleDelete.json" } }, "description": "Deletes an AuthorizationRule for a Namespace.", "parameters": [ @@ -464,7 +464,7 @@ ], "operationId": "Namespaces_GetAuthorizationRule", "x-ms-examples": { - "NameSpaceAutorizationRuleGet": { "$ref": "./examples/EHNameSpaceAutorizationRuleGet.json" } + "NameSpaceAuthorizationRuleGet": { "$ref": "./examples/EHNameSpaceAuthorizationRuleGet.json" } }, "description": "Gets an AuthorizationRule for a Namespace by rule name.", "parameters": [ @@ -538,7 +538,7 @@ ], "operationId": "Namespaces_RegenerateKeys", "x-ms-examples": { - "NameSpaceAuthorizationRuleRegenrateKey": { "$ref": "./examples/EHNameSpaceAuthorizationRuleRegenrateKey.json" } + "NameSpaceAuthorizationRuleRegenerateKey": { "$ref": "./examples/EHNameSpaceAuthorizationRuleRegenerateKey.json" } }, "description": "Regenerates the primary or secondary connection strings for the specified Namespace.", "parameters": [ @@ -749,7 +749,7 @@ ], "operationId": "EventHubs_ListAuthorizationRules", "x-ms-examples": { - "EventHubAutorizationRuleListAll": { "$ref": "./examples/EHEventHubAutorizationRuleListAll.json" } + "EventHubAuthorizationRuleListAll": { "$ref": "./examples/EHEventHubAuthorizationRuleListAll.json" } }, "description": "Gets the authorization rules for an Event Hub.", "parameters": [ @@ -839,7 +839,7 @@ ], "operationId": "EventHubs_GetAuthorizationRule", "x-ms-examples": { - "EventHubAutorizationRuleGet": { "$ref": "./examples/EHEventHubAutorizationRuleGet.json" } + "EventHubAuthorizationRuleGet": { "$ref": "./examples/EHEventHubAuthorizationRuleGet.json" } }, "description": "Gets an AuthorizationRule for an Event Hub by rule name.", "externalDocs": { @@ -880,7 +880,7 @@ ], "operationId": "EventHubs_PosttAuthorizationRule", "x-ms-examples": { - "EventHubAutorizationRuleGet": { "$ref": "./examples/EHEventHubAutorizationRuleGet.json" } + "EventHubAuthorizationRuleGet": { "$ref": "./examples/EHEventHubAuthorizationRuleGet.json" } }, "description": "Gets an AuthorizationRule for an Event Hub by rule name.", "externalDocs": { @@ -921,7 +921,7 @@ ], "operationId": "EventHubs_DeleteAuthorizationRule", "x-ms-examples": { - "EventHubAutorizationRuleDelete": { "$ref": "./examples/EHEventHubAutorizationRuleDelete.json" } + "EventHubAuthorizationRuleDelete": { "$ref": "./examples/EHEventHubAuthorizationRuleDelete.json" } }, "description": "Deletes an Event Hub AuthorizationRule.", "externalDocs": { @@ -1007,7 +1007,7 @@ ], "operationId": "EventHubs_RegenerateKeys", "x-ms-examples": { - "EventHubAuthorizationRuleRegenrateKey": { "$ref": "./examples/EHEventHubAuthorizationRuleRegenrateKey.json" } + "EventHubAuthorizationRuleRegenerateKey": { "$ref": "./examples/EHEventHubAuthorizationRuleRegenerateKey.json" } }, "description": "Regenerates the ACS and SAS connection strings for the Event Hub.", "externalDocs": { diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHEventHubAutorizationRuleDelete.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHEventHubAuthorizationRuleDelete.json similarity index 100% rename from specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHEventHubAutorizationRuleDelete.json rename to specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHEventHubAuthorizationRuleDelete.json diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHEventHubAutorizationRuleGet.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHEventHubAuthorizationRuleGet.json similarity index 100% rename from specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHEventHubAutorizationRuleGet.json rename to specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHEventHubAuthorizationRuleGet.json diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHEventHubAutorizationRuleListAll.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHEventHubAuthorizationRuleListAll.json similarity index 100% rename from specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHEventHubAutorizationRuleListAll.json rename to specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHEventHubAuthorizationRuleListAll.json diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHEventHubAuthorizationRuleRegenrateKey.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHEventHubAuthorizationRuleRegenerateKey.json similarity index 100% rename from specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHEventHubAuthorizationRuleRegenrateKey.json rename to specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHEventHubAuthorizationRuleRegenerateKey.json diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHNameSpaceAutorizationRuleDelete.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHNameSpaceAuthorizationRuleDelete.json similarity index 100% rename from specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHNameSpaceAutorizationRuleDelete.json rename to specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHNameSpaceAuthorizationRuleDelete.json diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHNameSpaceAutorizationRuleGet.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHNameSpaceAuthorizationRuleGet.json similarity index 100% rename from specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHNameSpaceAutorizationRuleGet.json rename to specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHNameSpaceAuthorizationRuleGet.json diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHNameSpaceAutorizationRuleListAll.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHNameSpaceAuthorizationRuleListAll.json similarity index 100% rename from specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHNameSpaceAutorizationRuleListAll.json rename to specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHNameSpaceAuthorizationRuleListAll.json diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHNameSpaceAuthorizationRuleRegenrateKey.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHNameSpaceAuthorizationRuleRegenerateKey.json similarity index 100% rename from specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHNameSpaceAuthorizationRuleRegenrateKey.json rename to specification/eventhub/resource-manager/Microsoft.EventHub/stable/2015-08-01/examples/EHNameSpaceAuthorizationRuleRegenerateKey.json diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/EventHub.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/EventHub.json index d70c4431e7ce..21af98876a91 100644 --- a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/EventHub.json +++ b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/EventHub.json @@ -232,7 +232,7 @@ } }, "200": { - "description": "Namespace successfuly created.", + "description": "Namespace successfully created.", "schema": { "$ref": "#/definitions/EHNamespace" } @@ -277,7 +277,7 @@ "description": "No content." }, "200": { - "description": "Namespace successfuly deleted." + "description": "Namespace successfully deleted." }, "202": { "description": "Namespace delete request accepted." @@ -375,7 +375,7 @@ } }, "200": { - "description": "Namespace successfuly updated.", + "description": "Namespace successfully updated.", "schema": { "$ref": "#/definitions/EHNamespace" } @@ -399,7 +399,7 @@ ], "operationId": "Namespaces_GetMessagingPlan", "x-ms-examples": { - "GetNamespaceMessagingPlan": { "$ref": "./examples/NameSpaces/EHNameSpaceGetMessagningPlan.json" } + "GetNamespaceMessagingPlan": { "$ref": "./examples/NameSpaces/EHNameSpaceGetMessagingPlan.json" } }, "description": "Gets messaging plan for specified namespace.", "parameters": [ @@ -439,7 +439,7 @@ ], "operationId": "Namespaces_ListAuthorizationRules", "x-ms-examples": { - "ListAuthorizationRules": { "$ref": "./examples/NameSpaces/EHNameSpaceAutorizationRuleListAll.json" } + "ListAuthorizationRules": { "$ref": "./examples/NameSpaces/EHNameSpaceAuthorizationRuleListAll.json" } }, "description": "Gets a list of authorization rules for a Namespace.", "parameters": [ @@ -532,7 +532,7 @@ ], "operationId": "Namespaces_DeleteAuthorizationRule", "x-ms-examples": { - "NameSpaceAutorizationRuleDelete": { "$ref": "./examples/NameSpaces/EHNameSpaceAutorizationRuleDelete.json" } + "NameSpaceAuthorizationRuleDelete": { "$ref": "./examples/NameSpaces/EHNameSpaceAuthorizationRuleDelete.json" } }, "description": "Deletes an AuthorizationRule for a Namespace.", "parameters": [ @@ -573,7 +573,7 @@ ], "operationId": "Namespaces_GetAuthorizationRule", "x-ms-examples": { - "NameSpaceAutorizationRuleGet": { "$ref": "./examples/NameSpaces/EHNameSpaceAutorizationRuleGet.json" } + "NameSpaceAuthorizationRuleGet": { "$ref": "./examples/NameSpaces/EHNameSpaceAuthorizationRuleGet.json" } }, "description": "Gets an AuthorizationRule for a Namespace by rule name.", "parameters": [ @@ -659,7 +659,7 @@ ], "operationId": "Namespaces_RegenerateKeys", "x-ms-examples": { - "NameSpaceAuthorizationRuleRegenrateKey": { "$ref": "./examples/NameSpaces/EHNameSpaceAuthorizationRuleRegenrateKey.json" } + "NameSpaceAuthorizationRuleRegenerateKey": { "$ref": "./examples/NameSpaces/EHNameSpaceAuthorizationRuleRegenerateKey.json" } }, "description": "Regenerates the primary or secondary connection strings for the specified Namespace.", "parameters": [ @@ -979,7 +979,7 @@ "x-ms-examples": { "EHAliasFailOver": { "$ref": "./examples/disasterRecoveryConfigs/EHAliasFailOver.json" } }, - "description": "envokes GEO DR failover and reconfigure the alias to point to the secondary namespace", + "description": "Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" @@ -1017,7 +1017,7 @@ ], "operationId": "DisasterRecoveryConfigs_ListAuthorizationRules", "x-ms-examples": { - "ListAuthorizationRules": { "$ref": "./examples/disasterRecoveryConfigs/EHAliasAutorizationRuleListAll.json" } + "ListAuthorizationRules": { "$ref": "./examples/disasterRecoveryConfigs/EHAliasAuthorizationRuleListAll.json" } }, "description": "Gets a list of authorization rules for a Namespace.", "parameters": [ @@ -1063,7 +1063,7 @@ ], "operationId": "DisasterRecoveryConfigs_GetAuthorizationRule", "x-ms-examples": { - "NameSpaceAutorizationRuleGet": { "$ref": "./examples/disasterRecoveryConfigs/EHAliasAutorizationRuleGet.json" } + "NameSpaceAuthorizationRuleGet": { "$ref": "./examples/disasterRecoveryConfigs/EHAliasAuthorizationRuleGet.json" } }, "description": "Gets an AuthorizationRule for a Namespace by rule name.", "parameters": [ @@ -1338,7 +1338,7 @@ ], "operationId": "EventHubs_ListAuthorizationRules", "x-ms-examples": { - "EventHubAutorizationRuleListAll": { "$ref": "./examples/EventHubs/EHEventHubAutorizationRuleListAll.json" } + "EventHubAuthorizationRuleListAll": { "$ref": "./examples/EventHubs/EHEventHubAuthorizationRuleListAll.json" } }, "description": "Gets the authorization rules for an Event Hub.", "parameters": [ @@ -1437,7 +1437,7 @@ ], "operationId": "EventHubs_GetAuthorizationRule", "x-ms-examples": { - "EventHubAutorizationRuleGet": { "$ref": "./examples/EventHubs/EHEventHubAutorizationRuleGet.json" } + "EventHubAuthorizationRuleGet": { "$ref": "./examples/EventHubs/EHEventHubAuthorizationRuleGet.json" } }, "description": "Gets an AuthorizationRule for an Event Hub by rule name.", "parameters": [ @@ -1481,7 +1481,7 @@ ], "operationId": "EventHubs_DeleteAuthorizationRule", "x-ms-examples": { - "EventHubAutorizationRuleDelete": { "$ref": "./examples/EventHubs/EHEventHubAutorizationRuleDelete.json" } + "EventHubAuthorizationRuleDelete": { "$ref": "./examples/EventHubs/EHEventHubAuthorizationRuleDelete.json" } }, "description": "Deletes an Event Hub AuthorizationRule.", "parameters": [ @@ -1573,7 +1573,7 @@ ], "operationId": "EventHubs_RegenerateKeys", "x-ms-examples": { - "EventHubAuthorizationRuleRegenrateKey": { "$ref": "./examples/EventHubs/EHEventHubAuthorizationRuleRegenrateKey.json" } + "EventHubAuthorizationRuleRegenerateKey": { "$ref": "./examples/EventHubs/EHEventHubAuthorizationRuleRegenerateKey.json" } }, "description": "Regenerates the ACS and SAS connection strings for the Event Hub.", "parameters": [ @@ -1971,7 +1971,7 @@ "type": "integer", "maximum": 20, "minimum": 0, - "description": "Upper limit of throughput units when AutoInflate is enabled, vaule should be within 0 to 20 throughput units. ( '0' if AutoInflateEnabled = true)" + "description": "Upper limit of throughput units when AutoInflate is enabled, value should be within 0 to 20 throughput units. ( '0' if AutoInflateEnabled = true)" }, "kafkaEnabled": { "type": "boolean", @@ -2020,7 +2020,7 @@ "maximum": 20, "minimum": 0, "type": "integer", - "description": "The Event Hubs throughput units, vaule should be 0 to 20 throughput units." + "description": "The Event Hubs throughput units, value should be 0 to 20 throughput units." } }, "required": [ @@ -2141,7 +2141,7 @@ "required": [ "keyType" ], - "description": "Parameters supplied to the Regenerate Authorization Rule operation, specifies which key neeeds to be reset." + "description": "Parameters supplied to the Regenerate Authorization Rule operation, specifies which key needs to be reset." }, "Eventhub": { "properties": { @@ -2276,7 +2276,7 @@ "description": "Blob naming convention for archive, e.g. {Namespace}/{EventHub}/{PartitionId}/{Year}/{Month}/{Day}/{Hour}/{Minute}/{Second}. Here all the parameters (Namespace,EventHub .. etc) are mandatory irrespective of order" } }, - "description": "Properties describing the storage account, blob container and acrchive anme format for capture destination" + "description": "Properties describing the storage account, blob container and archive name format for capture destination" } }, "description": "Capture storage details for capture description" @@ -2316,7 +2316,7 @@ }, "userMetadata": { "type": "string", - "description": "Usermetadata is a placeholder to store user-defined string data with maximum length 1024. e.g. it can be used to store descriptive data, such as list of teams and their contact information also user-defined configuration settings can be stored." + "description": "User Metadata is a placeholder to store user-defined string data with maximum length 1024. e.g. it can be used to store descriptive data, such as list of teams and their contact information also user-defined configuration settings can be stored." } }, "description": "Single item in List or Get Consumer group operation" @@ -2441,7 +2441,7 @@ } }, "ErrorResponse": { - "description": "Error reponse indicates EventHub service is not able to process the incoming request. The reason is provided in the error message.", + "description": "Error response indicates EventHub service is not able to process the incoming request. The reason is provided in the error message.", "type": "object", "properties": { "code": { @@ -2475,7 +2475,7 @@ }, "partnerNamespace": { "type": "string", - "description": "ARM Id of the Primary/Secondary eventhub namespace name, which is part of GEO DR pairning" + "description": "ARM Id of the Primary/Secondary eventhub namespace name, which is part of GEO DR pairing" }, "alternateName": { "type": "string", diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/EventHubs/EHEventHubAutorizationRuleDelete.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/EventHubs/EHEventHubAuthorizationRuleDelete.json similarity index 100% rename from specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/EventHubs/EHEventHubAutorizationRuleDelete.json rename to specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/EventHubs/EHEventHubAuthorizationRuleDelete.json diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/EventHubs/EHEventHubAutorizationRuleGet.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/EventHubs/EHEventHubAuthorizationRuleGet.json similarity index 100% rename from specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/EventHubs/EHEventHubAutorizationRuleGet.json rename to specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/EventHubs/EHEventHubAuthorizationRuleGet.json diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/EventHubs/EHEventHubAutorizationRuleListAll.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/EventHubs/EHEventHubAuthorizationRuleListAll.json similarity index 100% rename from specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/EventHubs/EHEventHubAutorizationRuleListAll.json rename to specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/EventHubs/EHEventHubAuthorizationRuleListAll.json diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/EventHubs/EHEventHubAuthorizationRuleRegenrateKey.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/EventHubs/EHEventHubAuthorizationRuleRegenerateKey.json similarity index 100% rename from specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/EventHubs/EHEventHubAuthorizationRuleRegenrateKey.json rename to specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/EventHubs/EHEventHubAuthorizationRuleRegenerateKey.json diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceAutorizationRuleDelete.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceAuthorizationRuleDelete.json similarity index 100% rename from specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceAutorizationRuleDelete.json rename to specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceAuthorizationRuleDelete.json diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceAutorizationRuleGet.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceAuthorizationRuleGet.json similarity index 100% rename from specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceAutorizationRuleGet.json rename to specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceAuthorizationRuleGet.json diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceAutorizationRuleListAll.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceAuthorizationRuleListAll.json similarity index 100% rename from specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceAutorizationRuleListAll.json rename to specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceAuthorizationRuleListAll.json diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceAuthorizationRuleRegenrateKey.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceAuthorizationRuleRegenerateKey.json similarity index 100% rename from specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceAuthorizationRuleRegenrateKey.json rename to specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceAuthorizationRuleRegenerateKey.json diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceGetMessagningPlan.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceGetMessagingPlan.json similarity index 100% rename from specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceGetMessagningPlan.json rename to specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/NameSpaces/EHNameSpaceGetMessagingPlan.json diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/disasterRecoveryConfigs/EHAliasAutorizationRuleGet.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/disasterRecoveryConfigs/EHAliasAuthorizationRuleGet.json similarity index 100% rename from specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/disasterRecoveryConfigs/EHAliasAutorizationRuleGet.json rename to specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/disasterRecoveryConfigs/EHAliasAuthorizationRuleGet.json diff --git a/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/disasterRecoveryConfigs/EHAliasAutorizationRuleListAll.json b/specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/disasterRecoveryConfigs/EHAliasAuthorizationRuleListAll.json similarity index 100% rename from specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/disasterRecoveryConfigs/EHAliasAutorizationRuleListAll.json rename to specification/eventhub/resource-manager/Microsoft.EventHub/stable/2017-04-01/examples/disasterRecoveryConfigs/EHAliasAuthorizationRuleListAll.json diff --git a/specification/graphrbac/data-plane/stable/1.6/graphrbac.json b/specification/graphrbac/data-plane/stable/1.6/graphrbac.json index eaedd961a2bf..e679678e640f 100644 --- a/specification/graphrbac/data-plane/stable/1.6/graphrbac.json +++ b/specification/graphrbac/data-plane/stable/1.6/graphrbac.json @@ -2465,7 +2465,6 @@ }, "customKeyIdentifier": { "type":"string", - "format": "byte", "description": "Custom Key Identifier" } }, @@ -2494,6 +2493,11 @@ "value": { "type": "string", "description": "Key value." + }, + "customKeyIdentifier": { + "type": "string", + "format": "byte", + "description": "Custom Key Identifier" } }, "additionalProperties": { @@ -2735,16 +2739,30 @@ "type": "string", "description": "The home page of the application." }, - "oauth2AllowImplicitFlow" : { + "oauth2AllowImplicitFlow": { "type": "boolean", "description": "Whether to allow implicit grant flow for OAuth2" }, - "requiredResourceAccess" : { + "requiredResourceAccess": { "type": "array", "items": { "$ref": "#/definitions/RequiredResourceAccess" }, "description": "Specifies resources that this application requires access to and the set of OAuth permission scopes and application roles that it needs under each of those resources. This pre-configuration of required resource access drives the consent experience." + }, + "keyCredentials": { + "type": "array", + "items": { + "$ref": "#/definitions/KeyCredential" + }, + "description": "A collection of KeyCredential objects." + }, + "passwordCredentials": { + "type": "array", + "items": { + "$ref": "#/definitions/PasswordCredential" + }, + "description": "A collection of PasswordCredential objects" } }, "description": "Active Directory application information." diff --git a/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/applications.json b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/applications.json index bf8e4d00ffb8..eabeaa6e40f2 100644 --- a/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/applications.json +++ b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/applications.json @@ -249,9 +249,6 @@ "format": "int32", "description": "The public port to connect to." } - }, - "additionalProperties": { - "type": "string" } }, "ApplicationGetEndpoint": { @@ -340,10 +337,6 @@ "readOnly": true, "type": "string", "description": "The marketplace identifier." - }, - "additionalProperties": { - "description": "The additional properties for application.", - "type": "string" } } }, diff --git a/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/cluster.json b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/cluster.json index 5ae64d94394c..9c62de695cb5 100644 --- a/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/cluster.json +++ b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/cluster.json @@ -375,6 +375,58 @@ "nextLinkName": "nextLink" } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/rotatediskencryptionkey": { + "post": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_RotateDiskEncryptionKey", + "x-ms-examples": { + "Rotate disk encryption key of the specified HDInsight cluster": { + "$ref": "./examples/RotateLinuxHadoopClusterDiskEncryptionKey.json" + } + }, + "description": "Rotate disk encryption key of the specified HDInsight cluster.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterDiskEncryptionParameters" + }, + "description": "The parameters for the disk encryption operation." + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./operations.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK response definition." + }, + "202": { + "description": "Accepted response definition." + } + }, + "x-ms-long-running-operation": true + } } }, "definitions": { @@ -686,6 +738,10 @@ "storageProfile": { "$ref": "#/definitions/StorageProfile", "description": "The storage profile." + }, + "diskEncryptionProperties": { + "$ref": "#/definitions/DiskEncryptionProperties", + "description": "The disk encryption properties." } } }, @@ -854,6 +910,10 @@ "$ref": "#/definitions/ConnectivityEndpoint" }, "description": "The list of connectivity endpoints." + }, + "diskEncryptionProperties": { + "$ref": "#/definitions/DiskEncryptionProperties", + "description": "The disk encryption properties." } }, "required": [ @@ -1109,6 +1169,57 @@ }, "description": "The Resize Cluster request parameters." }, + "ClusterDiskEncryptionParameters": { + "properties": { + "vaultUri": { + "type": "string", + "description": "Base key vault URI where the customers key is located eg. https://myvault.vault.azure.net" + }, + "keyName": { + "type": "string", + "description": "Key name that is used for enabling disk encryption." + }, + "keyVersion": { + "type": "string", + "description": "Specific key version that is used for enabling disk encryption." + } + }, + "description": "The Disk Encryption Cluster request parameters." + }, + "DiskEncryptionProperties": { + "description": "The disk encryption properties", + "properties": { + "vaultUri": { + "type": "string", + "description": "Base key vault URI where the customers key is located eg. https://myvault.vault.azure.net" + }, + "keyName": { + "type": "string", + "description": "Key name that is used for enabling disk encryption." + }, + "keyVersion": { + "type": "string", + "description": "Specific key version that is used for enabling disk encryption." + }, + "encryptionAlgorithm": { + "type": "string", + "description": "Algorithm identifier for encryption, default RSA-OAEP.", + "enum": [ + "RSA-OAEP", + "RSA-OAEP-256", + "RSA1_5" + ], + "x-ms-enum": { + "name": "JsonWebKeyEncryptionAlgorithm", + "modelAsString": true + } + }, + "msiResourceId": { + "type": "string", + "description": "Resource ID of Managed Identity that is used to access the key vault." + } + } + }, "OperationResource": { "properties": { "status": { diff --git a/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/examples/RotateLinuxHadoopClusterDiskEncryptionKey.json b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/examples/RotateLinuxHadoopClusterDiskEncryptionKey.json new file mode 100644 index 000000000000..ec02df616300 --- /dev/null +++ b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2015-03-01-preview/examples/RotateLinuxHadoopClusterDiskEncryptionKey.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "clusterName": "cluster1", + "resourceGroupName": "rg1", + "api-version": "2015-03-01-preview", + "subscriptionId": "subid", + "parameters": { + "vaultUri": "https://newkeyvault.vault.azure.net/", + "keyName": "newkeyname", + "keyVersion": "newkeyversion" + } + }, + "responses": { + "200": {}, + "202": {} + } +} \ No newline at end of file diff --git a/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2018-06-01-preview/applications.json b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2018-06-01-preview/applications.json index 0f93b242c986..81828bee681f 100644 --- a/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2018-06-01-preview/applications.json +++ b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2018-06-01-preview/applications.json @@ -251,9 +251,6 @@ "format": "int32", "description": "The public port to connect to." } - }, - "additionalProperties": { - "type": "string" } }, "ApplicationGetEndpoint": { @@ -342,10 +339,6 @@ "readOnly": true, "type": "string", "description": "The marketplace identifier." - }, - "additionalProperties": { - "description": "The additional properties for application.", - "type": "string" } } }, diff --git a/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2018-06-01-preview/cluster.json b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2018-06-01-preview/cluster.json index 937f746ec649..772af1b8f092 100644 --- a/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2018-06-01-preview/cluster.json +++ b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2018-06-01-preview/cluster.json @@ -375,6 +375,58 @@ "nextLinkName": "nextLink" } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/rotatediskencryptionkey": { + "post": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_RotateDiskEncryptionKey", + "x-ms-examples": { + "Rotate disk encryption key of the specified HDInsight cluster": { + "$ref": "./examples/RotateLinuxHadoopClusterDiskEncryptionKey.json" + } + }, + "description": "Rotate disk encryption key of the specified HDInsight cluster.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterDiskEncryptionParameters" + }, + "description": "The parameters for the disk encryption operation." + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./operations.json#/definitions/ErrorResponse" + } + }, + "200": { + "description": "OK response definition." + }, + "202": { + "description": "Accepted response definition." + } + }, + "x-ms-long-running-operation": true + } } }, "definitions": { @@ -686,6 +738,10 @@ "storageProfile": { "$ref": "#/definitions/StorageProfile", "description": "The storage profile." + }, + "diskEncryptionProperties": { + "$ref": "#/definitions/DiskEncryptionProperties", + "description": "The disk encryption properties." } } }, @@ -854,6 +910,10 @@ "$ref": "#/definitions/ConnectivityEndpoint" }, "description": "The list of connectivity endpoints." + }, + "diskEncryptionProperties": { + "$ref": "#/definitions/DiskEncryptionProperties", + "description": "The disk encryption properties." } }, "required": [ @@ -1109,6 +1169,57 @@ }, "description": "The Resize Cluster request parameters." }, + "ClusterDiskEncryptionParameters": { + "properties": { + "vaultUri": { + "type": "string", + "description": "Base key vault URI where the customers key is located eg. https://myvault.vault.azure.net" + }, + "keyName": { + "type": "string", + "description": "Key name that is used for enabling disk encryption." + }, + "keyVersion": { + "type": "string", + "description": "Specific key version that is used for enabling disk encryption." + } + }, + "description": "The Disk Encryption Cluster request parameters." + }, + "DiskEncryptionProperties": { + "description": "The disk encryption properties", + "properties": { + "vaultUri": { + "type": "string", + "description": "Base key vault URI where the customers key is located eg. https://myvault.vault.azure.net" + }, + "keyName": { + "type": "string", + "description": "Key name that is used for enabling disk encryption." + }, + "keyVersion": { + "type": "string", + "description": "Specific key version that is used for enabling disk encryption." + }, + "encryptionAlgorithm": { + "type": "string", + "description": "Algorithm identifier for encryption, default RSA-OAEP.", + "enum": [ + "RSA-OAEP", + "RSA-OAEP-256", + "RSA1_5" + ], + "x-ms-enum": { + "name": "JsonWebKeyEncryptionAlgorithm", + "modelAsString": true + } + }, + "msiResourceId": { + "type": "string", + "description": "Resource ID of Managed Identity that is used to access the key vault." + } + } + }, "OperationResource": { "properties": { "status": { diff --git a/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2018-06-01-preview/examples/RotateLinuxHadoopClusterDiskEncryptionKey.json b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2018-06-01-preview/examples/RotateLinuxHadoopClusterDiskEncryptionKey.json new file mode 100644 index 000000000000..b5c58b8ebe81 --- /dev/null +++ b/specification/hdinsight/resource-manager/Microsoft.HDInsight/preview/2018-06-01-preview/examples/RotateLinuxHadoopClusterDiskEncryptionKey.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "clusterName": "cluster1", + "resourceGroupName": "rg1", + "api-version": "2018-06-01-preview", + "subscriptionId": "subid", + "parameters": { + "vaultUri": "https://newkeyvault.vault.azure.net/", + "keyName": "newkeyname", + "keyVersion": "newkeyversion" + } + }, + "responses": { + "200": {}, + "202": {} + } +} \ No newline at end of file diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2016-02-03/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2016-02-03/iothub.json index 845d81eecd3a..4f82bb6c68da 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/stable/2016-02-03/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2016-02-03/iothub.json @@ -392,7 +392,7 @@ ], "responses": { "200": { - "description": "This is a synchronous operation. The body contains a JSON-serialized list of the consumer groups in the the Event Hub-compatible endpoint in this IoT hub", + "description": "This is a synchronous operation. The body contains a JSON-serialized list of the consumer groups in the Event Hub-compatible endpoint in this IoT hub", "schema": { "$ref": "#/definitions/EventHubConsumerGroupsListResult" } @@ -1166,7 +1166,7 @@ }, "partitionCount": { "format": "int32", - "description": "The number of paritions for receiving device-to-cloud messages in the Event Hub-compatible endpoint. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages.", + "description": "The number of partitions for receiving device-to-cloud messages in the Event Hub-compatible endpoint. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages.", "type": "integer" }, "partitionIds": { @@ -1194,7 +1194,7 @@ "type": "object", "properties": { "sasTtlAsIso8601": { - "description": "The period of time for which the the SAS URI generated by IoT Hub for file upload is valid. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload#file-upload-notification-configuration-options.", + "description": "The period of time for which the SAS URI generated by IoT Hub for file upload is valid. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload#file-upload-notification-configuration-options.", "type": "string", "format": "duration" }, diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2017-01-19/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2017-01-19/iothub.json index 7135172257c0..2e01398dee2e 100644 --- a/specification/iothub/resource-manager/Microsoft.Devices/stable/2017-01-19/iothub.json +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2017-01-19/iothub.json @@ -381,7 +381,7 @@ ], "responses": { "200": { - "description": "This is a synchronous operation. The body contains a JSON-serialized list of the consumer groups in the the Event Hub-compatible endpoint in this IoT hub", + "description": "This is a synchronous operation. The body contains a JSON-serialized list of the consumer groups in the Event Hub-compatible endpoint in this IoT hub", "schema": { "$ref": "#/definitions/EventHubConsumerGroupsListResult" } @@ -1136,7 +1136,7 @@ }, "partitionCount": { "format": "int32", - "description": "The number of paritions for receiving device-to-cloud messages in the Event Hub-compatible endpoint. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages.", + "description": "The number of partitions for receiving device-to-cloud messages in the Event Hub-compatible endpoint. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages.", "type": "integer" }, "partitionIds": { @@ -1164,7 +1164,7 @@ "type": "object", "properties": { "sasTtlAsIso8601": { - "description": "The period of time for which the the SAS URI generated by IoT Hub for file upload is valid. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload#file-upload-notification-configuration-options.", + "description": "The period of time for which the SAS URI generated by IoT Hub for file upload is valid. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload#file-upload-notification-configuration-options.", "type": "string", "format": "duration" }, diff --git a/specification/keyvault/data-plane/readme.typescript.md b/specification/keyvault/data-plane/readme.typescript.md index 7e44f87cb64f..1afafe393acd 100644 --- a/specification/keyvault/data-plane/readme.typescript.md +++ b/specification/keyvault/data-plane/readme.typescript.md @@ -9,6 +9,4 @@ typescript: package-name: "@azure/keyvault" output-folder: "$(typescript-sdks-folder)/packages/@azure/keyvault" generate-metadata: true - generate-readme-md: false - generate-package-json: false ``` diff --git a/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRunActionRepetitionsRequestHistories_Get.json b/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRunActionRepetitionsRequestHistories_Get.json new file mode 100644 index 000000000000..5b06c98ac5bf --- /dev/null +++ b/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRunActionRepetitionsRequestHistories_Get.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2018-07-01-preview", + "resourceGroupName": "test-resource-group", + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "workflowName": "test-workflow", + "runName": "08586776228332053161046300351", + "actionName": "HTTP_Webhook", + "repetitionName": "000001", + "requestHistoryName": "08586611142732800686" + }, + "responses": { + "200": { + "body": { + "properties": { + "startTime": "2018-10-25T18:36:51.9206732Z", + "endTime": "2018-10-25T18:36:52.1863033Z", + "request": { + "headers": { + "Accept-Language": "en-US", + "User-Agent": "azure-logic-apps/1.0,(workflow 80244732be3648f59d2084fd979cdd56; version 08586611142904036539)", + "x-ms-execution-location": "brazilsouth", + "x-ms-workflow-id": "80244732be3648f59d2084fd979cdd56", + "x-ms-workflow-version": "08586611142904036539", + "x-ms-workflow-name": "test-workflow", + "x-ms-workflow-system-id": "/locations/brazilsouth/scaleunits/prod-17/workflows/80244732be3648f59d2084fd979cdd56", + "x-ms-workflow-run-id": "08586611142736787787412824395CU21", + "x-ms-workflow-run-tracking-id": "b4cd2e77-f949-4d8c-8753-791407aebde8", + "x-ms-workflow-operation-name": "HTTP_Webhook", + "x-ms-workflow-subscription-id": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "x-ms-workflow-resourcegroup-name": "test-resource-group", + "x-ms-workflow-subscription-capacity": "Large", + "x-ms-tracking-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-correlation-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-client-request-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-client-tracking-id": "08586611142736787787412824395CU21", + "x-ms-action-tracking-id": "ad27f634-6523-492f-924e-9a75e28619c8" + }, + "uri": "http://tempuri.org", + "method": "GET" + }, + "response": { + "headers": { + "Cache-Control": "private", + "Date": "Thu, 25 Oct 2018 18:36:51 GMT", + "Location": "http://www.bing.com/", + "Server": "Microsoft-IIS/10.0", + "X-AspNet-Version": "4.0.30319", + "X-Powered-By": "ASP.NET" + }, + "statusCode": 302, + "bodyLink": { + "uri": "https://tempuri.org", + "contentVersion": "2LOOAR8Eh2pd7AvRHXUhRg==", + "contentSize": 137, + "contentHash": { + "algorithm": "md5", + "value": "2LOOAR8Eh2pd7AvRHXUhRg==" + } + } + } + }, + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Logic/workflows/test-workflow/runs/08586611142736787787412824395CU21/actions/HTTP_Webhook/requestHistories/08586611142732800686", + "name": "08586611142732800686", + "type": "Microsoft.Logic/workflows/runs/actions/requestHistories" + } + } + } +} \ No newline at end of file diff --git a/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRunActionRepetitionsRequestHistories_List.json b/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRunActionRepetitionsRequestHistories_List.json new file mode 100644 index 000000000000..72adfc688a82 --- /dev/null +++ b/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRunActionRepetitionsRequestHistories_List.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2018-07-01-preview", + "resourceGroupName": "test-resource-group", + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "workflowName": "test-workflow", + "runName": "08586776228332053161046300351", + "actionName": "HTTP_Webhook", + "repetitionName": "000001" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "startTime": "2018-10-25T18:36:51.9206732Z", + "endTime": "2018-10-25T18:36:52.1863033Z", + "request": { + "headers": { + "Accept-Language": "en-US", + "User-Agent": "azure-logic-apps/1.0,(workflow 80244732be3648f59d2084fd979cdd56; version 08586611142904036539)", + "x-ms-execution-location": "brazilsouth", + "x-ms-workflow-id": "80244732be3648f59d2084fd979cdd56", + "x-ms-workflow-version": "08586611142904036539", + "x-ms-workflow-name": "test-workflow", + "x-ms-workflow-system-id": "/locations/brazilsouth/scaleunits/prod-17/workflows/80244732be3648f59d2084fd979cdd56", + "x-ms-workflow-run-id": "08586611142736787787412824395CU21", + "x-ms-workflow-run-tracking-id": "b4cd2e77-f949-4d8c-8753-791407aebde8", + "x-ms-workflow-operation-name": "HTTP_Webhook", + "x-ms-workflow-subscription-id": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "x-ms-workflow-resourcegroup-name": "test-resource-group", + "x-ms-workflow-subscription-capacity": "Large", + "x-ms-tracking-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-correlation-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-client-request-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-client-tracking-id": "08586611142736787787412824395CU21", + "x-ms-action-tracking-id": "ad27f634-6523-492f-924e-9a75e28619c8" + }, + "uri": "http://tempuri.org", + "method": "GET" + }, + "response": { + "headers": { + "Cache-Control": "private", + "Date": "Thu, 25 Oct 2018 18:36:51 GMT", + "Location": "http://www.bing.com/", + "Server": "Microsoft-IIS/10.0", + "X-AspNet-Version": "4.0.30319", + "X-Powered-By": "ASP.NET" + }, + "statusCode": 302, + "bodyLink": { + "uri": "https://tempuri.org", + "contentVersion": "2LOOAR8Eh2pd7AvRHXUhRg==", + "contentSize": 137, + "contentHash": { + "algorithm": "md5", + "value": "2LOOAR8Eh2pd7AvRHXUhRg==" + } + } + } + }, + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Logic/workflows/test-workflow/runs/08586611142736787787412824395CU21/actions/HTTP_Webhook/requestHistories/08586611142732800686", + "name": "08586611142732800686", + "type": "Microsoft.Logic/workflows/runs/actions/requestHistories" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRunActionRequestHistories_Get.json b/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRunActionRequestHistories_Get.json new file mode 100644 index 000000000000..a39cfc2daa86 --- /dev/null +++ b/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRunActionRequestHistories_Get.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2018-07-01-preview", + "resourceGroupName": "test-resource-group", + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "workflowName": "test-workflow", + "runName": "08586776228332053161046300351", + "actionName": "HTTP_Webhook", + "requestHistoryName": "08586611142732800686" + }, + "responses": { + "200": { + "body": { + "properties": { + "startTime": "2018-10-25T18:36:51.9206732Z", + "endTime": "2018-10-25T18:36:52.1863033Z", + "request": { + "headers": { + "Accept-Language": "en-US", + "User-Agent": "azure-logic-apps/1.0,(workflow 80244732be3648f59d2084fd979cdd56; version 08586611142904036539)", + "x-ms-execution-location": "brazilsouth", + "x-ms-workflow-id": "80244732be3648f59d2084fd979cdd56", + "x-ms-workflow-version": "08586611142904036539", + "x-ms-workflow-name": "test-workflow", + "x-ms-workflow-system-id": "/locations/brazilsouth/scaleunits/prod-17/workflows/80244732be3648f59d2084fd979cdd56", + "x-ms-workflow-run-id": "08586611142736787787412824395CU21", + "x-ms-workflow-run-tracking-id": "b4cd2e77-f949-4d8c-8753-791407aebde8", + "x-ms-workflow-operation-name": "HTTP_Webhook", + "x-ms-workflow-subscription-id": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "x-ms-workflow-resourcegroup-name": "test-resource-group", + "x-ms-workflow-subscription-capacity": "Large", + "x-ms-tracking-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-correlation-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-client-request-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-client-tracking-id": "08586611142736787787412824395CU21", + "x-ms-action-tracking-id": "ad27f634-6523-492f-924e-9a75e28619c8" + }, + "uri": "http://tempuri.org", + "method": "GET" + }, + "response": { + "headers": { + "Cache-Control": "private", + "Date": "Thu, 25 Oct 2018 18:36:51 GMT", + "Location": "http://www.bing.com/", + "Server": "Microsoft-IIS/10.0", + "X-AspNet-Version": "4.0.30319", + "X-Powered-By": "ASP.NET" + }, + "statusCode": 302, + "bodyLink": { + "uri": "https://tempuri.org", + "contentVersion": "2LOOAR8Eh2pd7AvRHXUhRg==", + "contentSize": 137, + "contentHash": { + "algorithm": "md5", + "value": "2LOOAR8Eh2pd7AvRHXUhRg==" + } + } + } + }, + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Logic/workflows/test-workflow/runs/08586611142736787787412824395CU21/actions/HTTP_Webhook/requestHistories/08586611142732800686", + "name": "08586611142732800686", + "type": "Microsoft.Logic/workflows/runs/actions/requestHistories" + } + } + } +} \ No newline at end of file diff --git a/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRunActionRequestHistories_List.json b/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRunActionRequestHistories_List.json new file mode 100644 index 000000000000..e2177e2559a4 --- /dev/null +++ b/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/examples/WorkflowRunActionRequestHistories_List.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2018-07-01-preview", + "resourceGroupName": "test-resource-group", + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "workflowName": "test-workflow", + "runName": "08586776228332053161046300351", + "actionName": "HTTP_Webhook" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "startTime": "2018-10-25T18:36:51.9206732Z", + "endTime": "2018-10-25T18:36:52.1863033Z", + "request": { + "headers": { + "Accept-Language": "en-US", + "User-Agent": "azure-logic-apps/1.0,(workflow 80244732be3648f59d2084fd979cdd56; version 08586611142904036539)", + "x-ms-execution-location": "brazilsouth", + "x-ms-workflow-id": "80244732be3648f59d2084fd979cdd56", + "x-ms-workflow-version": "08586611142904036539", + "x-ms-workflow-name": "test-workflow", + "x-ms-workflow-system-id": "/locations/brazilsouth/scaleunits/prod-17/workflows/80244732be3648f59d2084fd979cdd56", + "x-ms-workflow-run-id": "08586611142736787787412824395CU21", + "x-ms-workflow-run-tracking-id": "b4cd2e77-f949-4d8c-8753-791407aebde8", + "x-ms-workflow-operation-name": "HTTP_Webhook", + "x-ms-workflow-subscription-id": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "x-ms-workflow-resourcegroup-name": "test-resource-group", + "x-ms-workflow-subscription-capacity": "Large", + "x-ms-tracking-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-correlation-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-client-request-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-client-tracking-id": "08586611142736787787412824395CU21", + "x-ms-action-tracking-id": "ad27f634-6523-492f-924e-9a75e28619c8" + }, + "uri": "http://tempuri.org", + "method": "GET" + }, + "response": { + "headers": { + "Cache-Control": "private", + "Date": "Thu, 25 Oct 2018 18:36:51 GMT", + "Location": "http://www.bing.com/", + "Server": "Microsoft-IIS/10.0", + "X-AspNet-Version": "4.0.30319", + "X-Powered-By": "ASP.NET" + }, + "statusCode": 302, + "bodyLink": { + "uri": "https://tempuri.org", + "contentVersion": "2LOOAR8Eh2pd7AvRHXUhRg==", + "contentSize": 137, + "contentHash": { + "algorithm": "md5", + "value": "2LOOAR8Eh2pd7AvRHXUhRg==" + } + } + } + }, + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Logic/workflows/test-workflow/runs/08586611142736787787412824395CU21/actions/HTTP_Webhook/requestHistories/08586611142732800686", + "name": "08586611142732800686", + "type": "Microsoft.Logic/workflows/runs/actions/requestHistories" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/logic.json b/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/logic.json index f17786cc5756..81db69c569cb 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/logic.json +++ b/specification/logic/resource-manager/Microsoft.Logic/preview/2018-07-01-preview/logic.json @@ -1993,6 +1993,296 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logic/workflows/{workflowName}/runs/{runName}/actions/{actionName}/repetitions/{repetitionName}/requestHistories": { + "get": { + "tags": [ + "WorkflowRunActions" + ], + "operationId": "WorkflowRunActionRepetitionsRequestHistories_List", + "description": "List a workflow run repetition request history.", + "x-ms-examples": { + "List repetition request history": { + "$ref": "./examples/WorkflowRunActionRepetitionsRequestHistories_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "The resource group name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "workflowName", + "description": "The workflow name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "runName", + "description": "The workflow run name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "actionName", + "description": "The workflow action name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "repetitionName", + "description": "The workflow repetition.", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RequestHistoryListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logic/workflows/{workflowName}/runs/{runName}/actions/{actionName}/repetitions/{repetitionName}/requestHistories/{requestHistoryName}": { + "get": { + "tags": [ + "WorkflowRunActions" + ], + "operationId": "WorkflowRunActionRepetitionsRequestHistories_Get", + "description": "Gets a workflow run repetition request history.", + "x-ms-examples": { + "Get a repetition request history": { + "$ref": "./examples/WorkflowRunActionRepetitionsRequestHistories_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "The resource group name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "workflowName", + "description": "The workflow name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "runName", + "description": "The workflow run name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "actionName", + "description": "The workflow action name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "repetitionName", + "description": "The workflow repetition.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "requestHistoryName", + "description": "The request history name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RequestHistory" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logic/workflows/{workflowName}/runs/{runName}/actions/{actionName}/requestHistories": { + "get": { + "tags": [ + "WorkflowRunActions" + ], + "operationId": "WorkflowRunActionRequestHistories_List", + "description": "List a workflow run request history.", + "x-ms-examples": { + "List a request history": { + "$ref": "./examples/WorkflowRunActionRequestHistories_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "The resource group name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "workflowName", + "description": "The workflow name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "runName", + "description": "The workflow run name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "actionName", + "description": "The workflow action name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RequestHistoryListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logic/workflows/{workflowName}/runs/{runName}/actions/{actionName}/requestHistories/{requestHistoryName}": { + "get": { + "tags": [ + "WorkflowRunActions" + ], + "operationId": "WorkflowRunActionRequestHistories_Get", + "description": "Gets a workflow run request history.", + "x-ms-examples": { + "Get a request history": { + "$ref": "./examples/WorkflowRunActionRequestHistories_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "The resource group name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "workflowName", + "description": "The workflow name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "runName", + "description": "The workflow run name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "actionName", + "description": "The workflow action name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "requestHistoryName", + "description": "The request history name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RequestHistory" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logic/workflows/{workflowName}/runs/{runName}/actions/{actionName}/scopeRepetitions": { "get": { "tags": [ @@ -4879,7 +5169,6 @@ "properties": { "id": { "type": "string", - "readOnly": true, "description": "The resource id." }, "name": { @@ -9641,6 +9930,103 @@ "description": "The recurrence." } } + }, + "RequestHistoryListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RequestHistory" + }, + "description": "A list of workflow request histories." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "The list of workflow request histories." + }, + "RequestHistory": { + "type": "object", + "additionalProperties": false, + "description": "The request history.", + "properties": { + "properties": { + "$ref": "#/definitions/RequestHistoryProperties", + "description": "The request history properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "RequestHistoryProperties": { + "type": "object", + "additionalProperties": false, + "description": "The request history.", + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "description": "The time the request started." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The time the request ended." + }, + "request": { + "$ref": "#/definitions/Request", + "description": "The request." + }, + "response": { + "$ref": "#/definitions/Response", + "description": "The response." + } + } + }, + "Request": { + "type": "object", + "additionalProperties": false, + "description": "A request.", + "properties": { + "headers": { + "$ref": "#/definitions/Object", + "description": "A list of all the headers attached to the request." + }, + "uri": { + "type": "string", + "description": "The destination for the request." + }, + "method": { + "type": "string", + "description": "The HTTP method used for the request." + } + } + }, + "Response": { + "type": "object", + "additionalProperties": false, + "description": "A response.", + "properties": { + "headers": { + "$ref": "#/definitions/Object", + "description": "A list of all the headers attached to the response." + }, + "statusCode": { + "type": "integer", + "format": "int32", + "description": "The status code of the response." + }, + "bodyLink": { + "$ref": "#/definitions/ContentLink", + "description": "Details on the location of the body content." + } + } } }, "parameters": { diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRunActionRepetitionsRequestHistories_Get.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRunActionRepetitionsRequestHistories_Get.json new file mode 100644 index 000000000000..5b06c98ac5bf --- /dev/null +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRunActionRepetitionsRequestHistories_Get.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2018-07-01-preview", + "resourceGroupName": "test-resource-group", + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "workflowName": "test-workflow", + "runName": "08586776228332053161046300351", + "actionName": "HTTP_Webhook", + "repetitionName": "000001", + "requestHistoryName": "08586611142732800686" + }, + "responses": { + "200": { + "body": { + "properties": { + "startTime": "2018-10-25T18:36:51.9206732Z", + "endTime": "2018-10-25T18:36:52.1863033Z", + "request": { + "headers": { + "Accept-Language": "en-US", + "User-Agent": "azure-logic-apps/1.0,(workflow 80244732be3648f59d2084fd979cdd56; version 08586611142904036539)", + "x-ms-execution-location": "brazilsouth", + "x-ms-workflow-id": "80244732be3648f59d2084fd979cdd56", + "x-ms-workflow-version": "08586611142904036539", + "x-ms-workflow-name": "test-workflow", + "x-ms-workflow-system-id": "/locations/brazilsouth/scaleunits/prod-17/workflows/80244732be3648f59d2084fd979cdd56", + "x-ms-workflow-run-id": "08586611142736787787412824395CU21", + "x-ms-workflow-run-tracking-id": "b4cd2e77-f949-4d8c-8753-791407aebde8", + "x-ms-workflow-operation-name": "HTTP_Webhook", + "x-ms-workflow-subscription-id": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "x-ms-workflow-resourcegroup-name": "test-resource-group", + "x-ms-workflow-subscription-capacity": "Large", + "x-ms-tracking-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-correlation-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-client-request-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-client-tracking-id": "08586611142736787787412824395CU21", + "x-ms-action-tracking-id": "ad27f634-6523-492f-924e-9a75e28619c8" + }, + "uri": "http://tempuri.org", + "method": "GET" + }, + "response": { + "headers": { + "Cache-Control": "private", + "Date": "Thu, 25 Oct 2018 18:36:51 GMT", + "Location": "http://www.bing.com/", + "Server": "Microsoft-IIS/10.0", + "X-AspNet-Version": "4.0.30319", + "X-Powered-By": "ASP.NET" + }, + "statusCode": 302, + "bodyLink": { + "uri": "https://tempuri.org", + "contentVersion": "2LOOAR8Eh2pd7AvRHXUhRg==", + "contentSize": 137, + "contentHash": { + "algorithm": "md5", + "value": "2LOOAR8Eh2pd7AvRHXUhRg==" + } + } + } + }, + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Logic/workflows/test-workflow/runs/08586611142736787787412824395CU21/actions/HTTP_Webhook/requestHistories/08586611142732800686", + "name": "08586611142732800686", + "type": "Microsoft.Logic/workflows/runs/actions/requestHistories" + } + } + } +} \ No newline at end of file diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRunActionRepetitionsRequestHistories_List.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRunActionRepetitionsRequestHistories_List.json new file mode 100644 index 000000000000..72adfc688a82 --- /dev/null +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRunActionRepetitionsRequestHistories_List.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2018-07-01-preview", + "resourceGroupName": "test-resource-group", + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "workflowName": "test-workflow", + "runName": "08586776228332053161046300351", + "actionName": "HTTP_Webhook", + "repetitionName": "000001" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "startTime": "2018-10-25T18:36:51.9206732Z", + "endTime": "2018-10-25T18:36:52.1863033Z", + "request": { + "headers": { + "Accept-Language": "en-US", + "User-Agent": "azure-logic-apps/1.0,(workflow 80244732be3648f59d2084fd979cdd56; version 08586611142904036539)", + "x-ms-execution-location": "brazilsouth", + "x-ms-workflow-id": "80244732be3648f59d2084fd979cdd56", + "x-ms-workflow-version": "08586611142904036539", + "x-ms-workflow-name": "test-workflow", + "x-ms-workflow-system-id": "/locations/brazilsouth/scaleunits/prod-17/workflows/80244732be3648f59d2084fd979cdd56", + "x-ms-workflow-run-id": "08586611142736787787412824395CU21", + "x-ms-workflow-run-tracking-id": "b4cd2e77-f949-4d8c-8753-791407aebde8", + "x-ms-workflow-operation-name": "HTTP_Webhook", + "x-ms-workflow-subscription-id": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "x-ms-workflow-resourcegroup-name": "test-resource-group", + "x-ms-workflow-subscription-capacity": "Large", + "x-ms-tracking-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-correlation-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-client-request-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-client-tracking-id": "08586611142736787787412824395CU21", + "x-ms-action-tracking-id": "ad27f634-6523-492f-924e-9a75e28619c8" + }, + "uri": "http://tempuri.org", + "method": "GET" + }, + "response": { + "headers": { + "Cache-Control": "private", + "Date": "Thu, 25 Oct 2018 18:36:51 GMT", + "Location": "http://www.bing.com/", + "Server": "Microsoft-IIS/10.0", + "X-AspNet-Version": "4.0.30319", + "X-Powered-By": "ASP.NET" + }, + "statusCode": 302, + "bodyLink": { + "uri": "https://tempuri.org", + "contentVersion": "2LOOAR8Eh2pd7AvRHXUhRg==", + "contentSize": 137, + "contentHash": { + "algorithm": "md5", + "value": "2LOOAR8Eh2pd7AvRHXUhRg==" + } + } + } + }, + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Logic/workflows/test-workflow/runs/08586611142736787787412824395CU21/actions/HTTP_Webhook/requestHistories/08586611142732800686", + "name": "08586611142732800686", + "type": "Microsoft.Logic/workflows/runs/actions/requestHistories" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRunActionRequestHistories_Get.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRunActionRequestHistories_Get.json new file mode 100644 index 000000000000..a39cfc2daa86 --- /dev/null +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRunActionRequestHistories_Get.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2018-07-01-preview", + "resourceGroupName": "test-resource-group", + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "workflowName": "test-workflow", + "runName": "08586776228332053161046300351", + "actionName": "HTTP_Webhook", + "requestHistoryName": "08586611142732800686" + }, + "responses": { + "200": { + "body": { + "properties": { + "startTime": "2018-10-25T18:36:51.9206732Z", + "endTime": "2018-10-25T18:36:52.1863033Z", + "request": { + "headers": { + "Accept-Language": "en-US", + "User-Agent": "azure-logic-apps/1.0,(workflow 80244732be3648f59d2084fd979cdd56; version 08586611142904036539)", + "x-ms-execution-location": "brazilsouth", + "x-ms-workflow-id": "80244732be3648f59d2084fd979cdd56", + "x-ms-workflow-version": "08586611142904036539", + "x-ms-workflow-name": "test-workflow", + "x-ms-workflow-system-id": "/locations/brazilsouth/scaleunits/prod-17/workflows/80244732be3648f59d2084fd979cdd56", + "x-ms-workflow-run-id": "08586611142736787787412824395CU21", + "x-ms-workflow-run-tracking-id": "b4cd2e77-f949-4d8c-8753-791407aebde8", + "x-ms-workflow-operation-name": "HTTP_Webhook", + "x-ms-workflow-subscription-id": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "x-ms-workflow-resourcegroup-name": "test-resource-group", + "x-ms-workflow-subscription-capacity": "Large", + "x-ms-tracking-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-correlation-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-client-request-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-client-tracking-id": "08586611142736787787412824395CU21", + "x-ms-action-tracking-id": "ad27f634-6523-492f-924e-9a75e28619c8" + }, + "uri": "http://tempuri.org", + "method": "GET" + }, + "response": { + "headers": { + "Cache-Control": "private", + "Date": "Thu, 25 Oct 2018 18:36:51 GMT", + "Location": "http://www.bing.com/", + "Server": "Microsoft-IIS/10.0", + "X-AspNet-Version": "4.0.30319", + "X-Powered-By": "ASP.NET" + }, + "statusCode": 302, + "bodyLink": { + "uri": "https://tempuri.org", + "contentVersion": "2LOOAR8Eh2pd7AvRHXUhRg==", + "contentSize": 137, + "contentHash": { + "algorithm": "md5", + "value": "2LOOAR8Eh2pd7AvRHXUhRg==" + } + } + } + }, + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Logic/workflows/test-workflow/runs/08586611142736787787412824395CU21/actions/HTTP_Webhook/requestHistories/08586611142732800686", + "name": "08586611142732800686", + "type": "Microsoft.Logic/workflows/runs/actions/requestHistories" + } + } + } +} \ No newline at end of file diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRunActionRequestHistories_List.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRunActionRequestHistories_List.json new file mode 100644 index 000000000000..e2177e2559a4 --- /dev/null +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/examples/WorkflowRunActionRequestHistories_List.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2018-07-01-preview", + "resourceGroupName": "test-resource-group", + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "workflowName": "test-workflow", + "runName": "08586776228332053161046300351", + "actionName": "HTTP_Webhook" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "startTime": "2018-10-25T18:36:51.9206732Z", + "endTime": "2018-10-25T18:36:52.1863033Z", + "request": { + "headers": { + "Accept-Language": "en-US", + "User-Agent": "azure-logic-apps/1.0,(workflow 80244732be3648f59d2084fd979cdd56; version 08586611142904036539)", + "x-ms-execution-location": "brazilsouth", + "x-ms-workflow-id": "80244732be3648f59d2084fd979cdd56", + "x-ms-workflow-version": "08586611142904036539", + "x-ms-workflow-name": "test-workflow", + "x-ms-workflow-system-id": "/locations/brazilsouth/scaleunits/prod-17/workflows/80244732be3648f59d2084fd979cdd56", + "x-ms-workflow-run-id": "08586611142736787787412824395CU21", + "x-ms-workflow-run-tracking-id": "b4cd2e77-f949-4d8c-8753-791407aebde8", + "x-ms-workflow-operation-name": "HTTP_Webhook", + "x-ms-workflow-subscription-id": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "x-ms-workflow-resourcegroup-name": "test-resource-group", + "x-ms-workflow-subscription-capacity": "Large", + "x-ms-tracking-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-correlation-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-client-request-id": "ad484925-4148-4dd0-9488-07aed418b256", + "x-ms-client-tracking-id": "08586611142736787787412824395CU21", + "x-ms-action-tracking-id": "ad27f634-6523-492f-924e-9a75e28619c8" + }, + "uri": "http://tempuri.org", + "method": "GET" + }, + "response": { + "headers": { + "Cache-Control": "private", + "Date": "Thu, 25 Oct 2018 18:36:51 GMT", + "Location": "http://www.bing.com/", + "Server": "Microsoft-IIS/10.0", + "X-AspNet-Version": "4.0.30319", + "X-Powered-By": "ASP.NET" + }, + "statusCode": 302, + "bodyLink": { + "uri": "https://tempuri.org", + "contentVersion": "2LOOAR8Eh2pd7AvRHXUhRg==", + "contentSize": 137, + "contentHash": { + "algorithm": "md5", + "value": "2LOOAR8Eh2pd7AvRHXUhRg==" + } + } + } + }, + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Logic/workflows/test-workflow/runs/08586611142736787787412824395CU21/actions/HTTP_Webhook/requestHistories/08586611142732800686", + "name": "08586611142732800686", + "type": "Microsoft.Logic/workflows/runs/actions/requestHistories" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/logic.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/logic.json index cdefcc99dbee..88be3b519f46 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/logic.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2016-06-01/logic.json @@ -1993,6 +1993,296 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logic/workflows/{workflowName}/runs/{runName}/actions/{actionName}/repetitions/{repetitionName}/requestHistories": { + "get": { + "tags": [ + "WorkflowRunActions" + ], + "operationId": "WorkflowRunActionRepetitionsRequestHistories_List", + "description": "List a workflow run repetition request history.", + "x-ms-examples": { + "List repetition request history": { + "$ref": "./examples/WorkflowRunActionRepetitionsRequestHistories_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "The resource group name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "workflowName", + "description": "The workflow name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "runName", + "description": "The workflow run name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "actionName", + "description": "The workflow action name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "repetitionName", + "description": "The workflow repetition.", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RequestHistoryListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logic/workflows/{workflowName}/runs/{runName}/actions/{actionName}/repetitions/{repetitionName}/requestHistories/{requestHistoryName}": { + "get": { + "tags": [ + "WorkflowRunActions" + ], + "operationId": "WorkflowRunActionRepetitionsRequestHistories_Get", + "description": "Gets a workflow run repetition request history.", + "x-ms-examples": { + "Get a repetition request history": { + "$ref": "./examples/WorkflowRunActionRepetitionsRequestHistories_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "The resource group name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "workflowName", + "description": "The workflow name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "runName", + "description": "The workflow run name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "actionName", + "description": "The workflow action name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "repetitionName", + "description": "The workflow repetition.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "requestHistoryName", + "description": "The request history name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RequestHistory" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logic/workflows/{workflowName}/runs/{runName}/actions/{actionName}/requestHistories": { + "get": { + "tags": [ + "WorkflowRunActions" + ], + "operationId": "WorkflowRunActionRequestHistories_List", + "description": "List a workflow run request history.", + "x-ms-examples": { + "List a request history": { + "$ref": "./examples/WorkflowRunActionRequestHistories_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "The resource group name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "workflowName", + "description": "The workflow name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "runName", + "description": "The workflow run name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "actionName", + "description": "The workflow action name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RequestHistoryListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logic/workflows/{workflowName}/runs/{runName}/actions/{actionName}/requestHistories/{requestHistoryName}": { + "get": { + "tags": [ + "WorkflowRunActions" + ], + "operationId": "WorkflowRunActionRequestHistories_Get", + "description": "Gets a workflow run request history.", + "x-ms-examples": { + "Get a request history": { + "$ref": "./examples/WorkflowRunActionRequestHistories_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "The resource group name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "workflowName", + "description": "The workflow name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "runName", + "description": "The workflow run name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "actionName", + "description": "The workflow action name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "requestHistoryName", + "description": "The request history name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RequestHistory" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Logic/workflows/{workflowName}/runs/{runName}/actions/{actionName}/scopeRepetitions": { "get": { "tags": [ @@ -9686,6 +9976,103 @@ "description": "The recurrence." } } + }, + "RequestHistoryListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RequestHistory" + }, + "description": "A list of workflow request histories." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "The list of workflow request histories." + }, + "RequestHistory": { + "type": "object", + "additionalProperties": false, + "description": "The request history.", + "properties": { + "properties": { + "$ref": "#/definitions/RequestHistoryProperties", + "description": "The request history properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "RequestHistoryProperties": { + "type": "object", + "additionalProperties": false, + "description": "The request history.", + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "description": "The time the request started." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The time the request ended." + }, + "request": { + "$ref": "#/definitions/Request", + "description": "The request." + }, + "response": { + "$ref": "#/definitions/Response", + "description": "The response." + } + } + }, + "Request": { + "type": "object", + "additionalProperties": false, + "description": "A request.", + "properties": { + "headers": { + "$ref": "#/definitions/Object", + "description": "A list of all the headers attached to the request." + }, + "uri": { + "type": "string", + "description": "The destination for the request." + }, + "method": { + "type": "string", + "description": "The HTTP method used for the request." + } + } + }, + "Response": { + "type": "object", + "additionalProperties": false, + "description": "A response.", + "properties": { + "headers": { + "$ref": "#/definitions/Object", + "description": "A list of all the headers attached to the response." + }, + "statusCode": { + "type": "integer", + "format": "int32", + "description": "The status code of the response." + }, + "bodyLink": { + "$ref": "#/definitions/ContentLink", + "description": "Details on the location of the body content." + } + } } }, "parameters": { diff --git a/specification/machinelearning/resource-manager/readme.typescript.md b/specification/machinelearning/resource-manager/readme.typescript.md index c801055fc7b5..3314518c370d 100644 --- a/specification/machinelearning/resource-manager/readme.typescript.md +++ b/specification/machinelearning/resource-manager/readme.typescript.md @@ -6,7 +6,15 @@ Please also specify `--typescript-sdks-folder=`. - -``` yaml $(tag) == 'package-2017-04-preview' && $(go) -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2017-04-30-preview/$(namespace) -``` - ### Tag: package-2017-12-01-preview and go These settings apply only when `--tag=package-2017-12-01-preview --go` is specified on the command line. diff --git a/specification/mysql/resource-manager/readme.md b/specification/mysql/resource-manager/readme.md index 9595ab03be01..a5e6226e6371 100644 --- a/specification/mysql/resource-manager/readme.md +++ b/specification/mysql/resource-manager/readme.md @@ -30,16 +30,6 @@ tag: package-2017-12-01 ``` -### Tag: package-2017-04-preview - -These settings apply only when `--tag=package-2017-04-preview` is specified on the command line. - -``` yaml $(tag) == 'package-2017-04-preview' -input-file: -- Microsoft.DBforMySQL/preview/2017-04-30-preview/mysql.json -``` - - ### Tag: package-2017-12-01-preview These settings apply only when `--tag=package-2017-12-01-preview` is specified on the command line. diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2017-08-15/examples/MountTargets_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2017-08-15/examples/MountTargets_Delete.json deleted file mode 100644 index 5ba8004905e4..000000000000 --- a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2017-08-15/examples/MountTargets_Delete.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "parameters": { - "subscriptionId": "subscriptionId", - "resourceGroup": "resourceGroup", - "accountName": "accountName", - "poolName": "poolName", - "volumeName": "volumeName", - "mountTargetName": "mountTargetName", - "api-version": "2017-08-15" - }, - "responses": { - "204": {}, - "202": {} - } -} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2017-08-15/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2017-08-15/netapp.json index 103a2b754cf7..e7392ca8f979 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/preview/2017-08-15/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/preview/2017-08-15/netapp.json @@ -49,6 +49,9 @@ "$ref": "#/parameters/ApiVersionParameter" } ], + "x-ms-pageable": { + "nextLinkName": null + }, "responses": { "200": { "description": "OK", @@ -83,6 +86,9 @@ "NetApp Accounts" ], "operationId": "Accounts_List", + "x-ms-pageable": { + "nextLinkName": null + }, "responses": { "200": { "description": "OK", @@ -272,6 +278,9 @@ "Capacity Pools" ], "operationId": "Pools_List", + "x-ms-pageable": { + "nextLinkName": null + }, "responses": { "200": { "description": "OK", @@ -467,6 +476,9 @@ "Volumes" ], "operationId": "Volumes_List", + "x-ms-pageable": { + "nextLinkName": null + }, "responses": { "200": { "description": "OK", @@ -668,6 +680,9 @@ ], "operationId": "MountTargets_List", "description": "List mount targets", + "x-ms-pageable": { + "nextLinkName": null + }, "responses": { "200": { "description": "OK", @@ -738,33 +753,6 @@ "$ref": "examples/MountTargets_Get.json" } } - }, - "delete": { - "tags": [ - "MountTargets" - ], - "operationId": "MountTargets_Delete", - "description": "Delete mount target", - "responses": { - "202": { - "description": "Accepted -- Create or update request accepted; operation will complete asynchronously" - }, - "204": { - "description": "NoContent -- Resource does not exist." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/error" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "MountTargets_Delete": { - "$ref": "examples/MountTargets_Delete.json" - } - } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/pools/{poolName}/volumes/{volumeName}/snapshots": { @@ -794,6 +782,9 @@ ], "operationId": "Snapshots_List", "description": "List snapshots", + "x-ms-pageable": { + "nextLinkName": null + }, "responses": { "200": { "description": "OK", diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/ExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/ExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..27b102a501e0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/examples/ExpressRouteCircuitConnectionList.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2018-10-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState":"Succeeded" + } + }, + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSEUR", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSEUR", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharckteurope/providers/Microsoft.Network/expressRouteCircuits/dedharcktams/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState":"Succeeded" + } + } + ] + } + } + } + } \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/expressRouteCircuit.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/expressRouteCircuit.json index c0baa6dae2a9..a009d363d266 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/expressRouteCircuit.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-10-01/expressRouteCircuit.json @@ -638,6 +638,58 @@ "x-ms-long-running-operation": true } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections": { + "get": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_List", + "description": "Gets all global reach connections associated with a private peering in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitConnections resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnectionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Connection": { "$ref": "./examples/ExpressRouteCircuitConnectionList.json" } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}": { "delete": { "tags": [ @@ -1587,6 +1639,23 @@ ], "description": "Express Route Circuit Connection in an ExpressRouteCircuitPeering resource." }, + + "ExpressRouteCircuitConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "The global reach connection associated with Private Peering in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListConnections API service call retrieves all global reach connections that belongs to a Private Peering for an ExpressRouteCircuit." + }, "ExpressRouteCircuitSku": { "properties": { "name": { diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/applicationGateway.json new file mode 100644 index 000000000000..fe6fd876a54e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/applicationGateway.json @@ -0,0 +1,2358 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}": { + "delete": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Delete", + "x-ms-examples": { + "Delete ApplicationGateway": { + "$ref": "./examples/ApplicationGatewayDelete.json" + } + }, + "description": "Deletes the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist" + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Get", + "x-ms-examples": { + "Get ApplicationGateway": { + "$ref": "./examples/ApplicationGatewayGet.json" + } + }, + "description": "Gets the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + } + } + }, + "put": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_CreateOrUpdate", + "x-ms-examples": { + "Create Application Gateway": { + "$ref": "./examples/ApplicationGatewayCreate.json" + } + }, + "description": "Creates or updates the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGateway" + }, + "description": "Parameters supplied to the create or update application gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_UpdateTags", + "x-ms-examples": { + "Update Application Gateway tags": { + "$ref": "./examples/ApplicationGatewayUpdateTags.json" + } + }, + "description": "Updates the specified application gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update application gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_List", + "x-ms-examples": { + "Lists all application gateways in a resource group": { + "$ref": "./examples/ApplicationGatewayList.json" + } + }, + "description": "Lists all application gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of ApplicationGateway resources.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGateways": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAll", + "x-ms-examples": { + "Lists all application gateways in a subscription": { + "$ref": "./examples/ApplicationGatewayListAll.json" + } + }, + "description": "Gets all the application gateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of ApplicationGateway resources.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/start": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Start", + "x-ms-examples": { + "Start Application Gateway": { + "$ref": "./examples/ApplicationGatewayStart.json" + } + }, + "description": "Starts the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation starts the ApplicationGateway resource." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/stop": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Stop", + "x-ms-examples": { + "Stop Application Gateway": { + "$ref": "./examples/ApplicationGatewayStop.json" + } + }, + "description": "Stops the specified application gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the ApplicationGateway resource." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/backendhealth": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_BackendHealth", + "description": "Gets the backend health of the specified application gateway in a resource group.", + "x-ms-examples": { + "Get Backend Health": { + "$ref": "./examples/ApplicationGatewayBackendHealthGet.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands BackendAddressPool and BackendHttpSettings referenced in backend health." + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayBackendHealth" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableWafRuleSets", + "x-ms-examples": { + "Get Available Waf Rule Sets": { + "$ref": "./examples/ApplicationGatewayAvailableWafRuleSetsGet.json" + } + }, + "description": "Lists all available web application firewall rule sets.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available web application firewall rule sets.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableWafRuleSetsResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableSslOptions", + "x-ms-examples": { + "Get Available Ssl Options": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsGet.json" + } + }, + "description": "Lists available Ssl options for configuring Ssl policy.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns all available Ssl options for configuring Ssl policy.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableSslOptions" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableSslPredefinedPolicies", + "x-ms-examples": { + "Get Available Ssl Predefined Policies": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "description": "Lists all SSL predefined policies for configuring Ssl policy.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a lists of all Ssl predefined policies for configuring Ssl policy.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableSslPredefinedPolicies" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies/{predefinedPolicyName}": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_GetSslPredefinedPolicy", + "x-ms-examples": { + "Get Available Ssl Predefined Policy by name": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json" + } + }, + "description": "Gets Ssl predefined policy with the specified policy name.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "predefinedPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of Ssl predefined policy." + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a Ssl predefined policy with the specified policy name.", + "schema": { + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicy" + } + } + } + } + } + }, + "definitions": { + "ApplicationGatewayBackendHealth": { + "properties": { + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthPool" + } + } + }, + "description": "List of ApplicationGatewayBackendHealthPool resources." + }, + "ApplicationGatewayBackendHealthPool": { + "properties": { + "backendAddressPool": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool", + "description": "Reference of an ApplicationGatewayBackendAddressPool resource." + }, + "backendHttpSettingsCollection": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthHttpSettings" + }, + "description": "List of ApplicationGatewayBackendHealthHttpSettings resources." + } + }, + "description": "Application gateway BackendHealth pool." + }, + "ApplicationGatewayBackendHealthHttpSettings": { + "properties": { + "backendHttpSettings": { + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettings", + "description": "Reference of an ApplicationGatewayBackendHttpSettings resource." + }, + "servers": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthServer" + }, + "description": "List of ApplicationGatewayBackendHealthServer resources." + } + }, + "description": "Application gateway BackendHealthHttp settings." + }, + "ApplicationGatewayBackendHealthServer": { + "properties": { + "address": { + "type": "string", + "description": "IP address or FQDN of backend server." + }, + "ipConfiguration": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "Reference of IP configuration of backend server." + }, + "health": { + "type": "string", + "description": "Health of backend server.", + "enum": [ + "Unknown", + "Up", + "Down", + "Partial", + "Draining" + ], + "x-ms-enum": { + "name": "ApplicationGatewayBackendHealthServerHealth", + "modelAsString": true + } + } + }, + "description": "Application gateway backendhealth http settings." + }, + "ApplicationGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Name of an application gateway SKU.", + "enum": [ + "Standard_Small", + "Standard_Medium", + "Standard_Large", + "WAF_Medium", + "WAF_Large", + "Standard_v2", + "WAF_v2" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of an application gateway.", + "enum": [ + "Standard", + "WAF", + "Standard_v2", + "WAF_v2" + ], + "x-ms-enum": { + "name": "ApplicationGatewayTier", + "modelAsString": true + } + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "Capacity (instance count) of an application gateway." + } + }, + "description": "SKU of an application gateway" + }, + "ApplicationGatewaySslPolicy": { + "properties": { + "disabledSslProtocols": { + "type": "array", + "description": "Ssl protocols to be disabled on application gateway.", + "items": { + "type": "string", + "$ref": "#/definitions/ProtocolsEnum", + "x-ms-enum": { + "name": "ApplicationGatewaySslProtocol", + "modelAsString": true + } + } + }, + "policyType": { + "type": "string", + "description": "Type of Ssl Policy", + "enum": [ + "Predefined", + "Custom" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslPolicyType", + "modelAsString": true + } + }, + "policyName": { + "$ref": "#/definitions/PolicyNameEnum", + "description": "Name of Ssl predefined policy" + }, + "cipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "Ssl cipher suites to be enabled in the specified order to application gateway." + }, + "minProtocolVersion": { + "$ref": "#/definitions/ProtocolsEnum", + "description": "Minimum version of Ssl protocol to be supported on application gateway." + } + }, + "description": "Application Gateway Ssl policy." + }, + "ApplicationGatewayIPConfigurationPropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the subnet resource. A subnet from where application gateway gets its private address." + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the application gateway subnet resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of IP configuration of an application gateway." + }, + "ApplicationGatewayIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayIPConfigurationPropertiesFormat" + }, + "name": { + "type": "string", + "description": "Name of the IP configuration that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an application gateway. Currently 1 public and 1 private IP configuration is allowed." + }, + "ApplicationGatewayAuthenticationCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Certificate public data." + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the authentication certificate resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Authentication certificates properties of an application gateway." + }, + "ApplicationGatewayAuthenticationCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayAuthenticationCertificatePropertiesFormat" + }, + "name": { + "type": "string", + "description": "Name of the authentication certificate that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Authentication certificates of an application gateway." + }, + "ApplicationGatewayTrustedRootCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Certificate public data." + }, + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault." + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the trusted root certificate resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Trusted Root certificates properties of an application gateway." + }, + "ApplicationGatewayTrustedRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayTrustedRootCertificatePropertiesFormat" + }, + "name": { + "type": "string", + "description": "Name of the trusted root certificate that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Trusted Root certificates of an application gateway." + }, + "ApplicationGatewaySslCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Base-64 encoded pfx certificate. Only applicable in PUT Request." + }, + "password": { + "type": "string", + "description": "Password for the pfx file specified in data. Only applicable in PUT request." + }, + "publicCertData": { + "type": "string", + "description": "Base-64 encoded Public cert data corresponding to pfx specified in data. Only applicable in GET request." + }, + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault." + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the SSL certificate resource Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of SSL certificates of an application gateway." + }, + "ApplicationGatewaySslCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewaySslCertificatePropertiesFormat" + }, + "name": { + "type": "string", + "description": "Name of the SSL certificate that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "SSL certificates of an application gateway." + }, + "ApplicationGatewayFrontendIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "PrivateIPAddress of the network interface IP Configuration." + }, + "privateIPAllocationMethod": { + "type": "string", + "description": "PrivateIP allocation method.", + "enum": [ + "Static", + "Dynamic" + ], + "x-ms-enum": { + "name": "IPAllocationMethod", + "modelAsString": true + } + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the PublicIP resource." + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of Frontend IP configuration of an application gateway." + }, + "ApplicationGatewayFrontendIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFrontendIPConfigurationPropertiesFormat" + }, + "name": { + "type": "string", + "description": "Name of the frontend IP configuration that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend IP configuration of an application gateway." + }, + "ApplicationGatewayFrontendPortPropertiesFormat": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "Frontend port" + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the frontend port resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of Frontend port of an application gateway." + }, + "ApplicationGatewayFrontendPort": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFrontendPortPropertiesFormat" + }, + "name": { + "type": "string", + "description": "Name of the frontend port that is unique within an Application Gateway" + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend port of an application gateway." + }, + "ApplicationGatewayBackendAddress": { + "properties": { + "fqdn": { + "type": "string", + "description": "Fully qualified domain name (FQDN)." + }, + "ipAddress": { + "type": "string", + "description": "IP address" + } + }, + "description": "Backend address of an application gateway." + }, + "ApplicationGatewayBackendAddressPoolPropertiesFormat": { + "properties": { + "backendIPConfigurations": { + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "Collection of references to IPs defined in network interfaces." + }, + "backendAddresses": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendAddress" + }, + "description": "Backend addresses" + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the backend address pool resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of Backend Address Pool of an application gateway." + }, + "ApplicationGatewayBackendAddressPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayBackendAddressPoolPropertiesFormat" + }, + "name": { + "type": "string", + "description": "Name of the backend address pool that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Backend Address Pool of an application gateway." + }, + "ApplicationGatewayBackendHttpSettingsPropertiesFormat": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "The destination port on the backend." + }, + "protocol": { + "type": "string", + "description": "The protocol used to communicate with the backend. Possible values are 'Http' and 'Https'.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "ApplicationGatewayProtocol", + "modelAsString": true + } + }, + "cookieBasedAffinity": { + "type": "string", + "description": "Cookie based affinity.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ApplicationGatewayCookieBasedAffinity", + "modelAsString": true + } + }, + "requestTimeout": { + "type": "integer", + "format": "int32", + "description": "Request timeout in seconds. Application Gateway will fail the request if response is not received within RequestTimeout. Acceptable values are from 1 second to 86400 seconds." + }, + "probe": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Probe resource of an application gateway." + }, + "authenticationCertificates": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of references to application gateway authentication certificates." + }, + "trustedRootCertificates": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of references to application gateway trusted root certificates." + }, + "connectionDraining": { + "$ref": "#/definitions/ApplicationGatewayConnectionDraining", + "description": "Connection draining of the backend http settings resource." + }, + "hostName": { + "type": "string", + "description": "Host header to be sent to the backend servers." + }, + "pickHostNameFromBackendAddress": { + "type": "boolean", + "description": "Whether to pick host header should be picked from the host name of the backend server. Default value is false." + }, + "affinityCookieName": { + "type": "string", + "description": "Cookie name to use for the affinity cookie." + }, + "probeEnabled": { + "type": "boolean", + "description": "Whether the probe is enabled. Default value is false." + }, + "path": { + "type": "string", + "description": "Path which should be used as a prefix for all HTTP requests. Null means no path will be prefixed. Default value is null." + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the backend http settings resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of Backend address pool settings of an application gateway." + }, + "ApplicationGatewayBackendHttpSettings": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettingsPropertiesFormat" + }, + "name": { + "type": "string", + "description": "Name of the backend http settings that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Backend address pool settings of an application gateway." + }, + "ApplicationGatewayHttpListenerPropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Frontend IP configuration resource of an application gateway." + }, + "frontendPort": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Frontend port resource of an application gateway." + }, + "protocol": { + "type": "string", + "description": "Protocol of the HTTP listener. Possible values are 'Http' and 'Https'.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "ApplicationGatewayProtocol", + "modelAsString": true + } + }, + "hostName": { + "type": "string", + "description": "Host name of HTTP listener." + }, + "sslCertificate": { + "$ref": "./network.json#/definitions/SubResource", + "description": "SSL certificate resource of an application gateway." + }, + "requireServerNameIndication": { + "type": "boolean", + "description": "Applicable only if protocol is https. Enables SNI for multi-hosting." + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the HTTP listener resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + }, + "customErrorConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayCustomError" + }, + "description": "Custom error configurations of the HTTP listener." + } + }, + "description": "Properties of HTTP listener of an application gateway." + }, + "ApplicationGatewayHttpListener": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayHttpListenerPropertiesFormat" + }, + "name": { + "type": "string", + "description": "Name of the HTTP listener that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Http listener of an application gateway." + }, + "ApplicationGatewayPathRulePropertiesFormat": { + "properties": { + "paths": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Path rules of URL path map." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend address pool resource of URL path map path rule." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend http settings resource of URL path map path rule." + }, + "redirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Redirect configuration resource of URL path map path rule." + }, + "rewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Rewrite rule set resource of URL path map path rule." + }, + "provisioningState": { + "type": "string", + "description": "Path rule of URL path map resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of path rule of an application gateway." + }, + "ApplicationGatewayPathRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPathRulePropertiesFormat" + }, + "name": { + "type": "string", + "description": "Name of the path rule that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Path rule of URL path map of an application gateway." + }, + "ApplicationGatewayProbePropertiesFormat": { + "properties": { + "protocol": { + "type": "string", + "description": "The protocol used for the probe. Possible values are 'Http' and 'Https'.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "ApplicationGatewayProtocol", + "modelAsString": true + } + }, + "host": { + "type": "string", + "description": "Host name to send the probe to." + }, + "path": { + "type": "string", + "description": "Relative path of probe. Valid path starts from '/'. Probe is sent to ://:" + }, + "interval": { + "type": "integer", + "format": "int32", + "description": "The probing interval in seconds. This is the time interval between two consecutive probes. Acceptable values are from 1 second to 86400 seconds." + }, + "timeout": { + "type": "integer", + "format": "int32", + "description": "the probe timeout in seconds. Probe marked as failed if valid response is not received with this timeout period. Acceptable values are from 1 second to 86400 seconds." + }, + "unhealthyThreshold": { + "type": "integer", + "format": "int32", + "description": "The probe retry count. Backend server is marked down after consecutive probe failure count reaches UnhealthyThreshold. Acceptable values are from 1 second to 20." + }, + "pickHostNameFromBackendHttpSettings": { + "type": "boolean", + "description": "Whether the host header should be picked from the backend http settings. Default value is false." + }, + "minServers": { + "type": "integer", + "format": "int32", + "description": "Minimum number of servers that are always marked healthy. Default value is 0." + }, + "match": { + "$ref": "#/definitions/ApplicationGatewayProbeHealthResponseMatch", + "description": "Criterion for classifying a healthy probe response." + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the backend http settings resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of probe of an application gateway." + }, + "ApplicationGatewayProbeHealthResponseMatch": { + "properties": { + "body": { + "type": "string", + "description": "Body that must be contained in the health response. Default value is empty." + }, + "statusCodes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed ranges of healthy status codes. Default range of healthy status codes is 200-399." + } + }, + "description": "Application gateway probe health response match" + }, + "ApplicationGatewayProbe": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayProbePropertiesFormat" + }, + "name": { + "type": "string", + "description": "Name of the probe that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Probe of the application gateway." + }, + "ApplicationGatewayRequestRoutingRulePropertiesFormat": { + "properties": { + "ruleType": { + "type": "string", + "description": "Rule type.", + "enum": [ + "Basic", + "PathBasedRouting" + ], + "x-ms-enum": { + "name": "ApplicationGatewayRequestRoutingRuleType", + "modelAsString": true + } + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend address pool resource of the application gateway. " + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend http settings resource of the application gateway." + }, + "httpListener": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Http listener resource of the application gateway. " + }, + "urlPathMap": { + "$ref": "./network.json#/definitions/SubResource", + "description": "URL path map resource of the application gateway." + }, + "rewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Rewrite Rule Set resource in Basic rule of the application gateway." + }, + "redirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Redirect configuration resource of the application gateway." + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the request routing rule resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of request routing rule of the application gateway." + }, + "ApplicationGatewayRequestRoutingRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRequestRoutingRulePropertiesFormat" + }, + "name": { + "type": "string", + "description": "Name of the request routing rule that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Request routing rule of an application gateway." + }, + "ApplicationGatewayRewriteRuleSet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRewriteRuleSetPropertiesFormat" + }, + "name": { + "type": "string", + "description": "Name of the rewrite rule set that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Rewrite rule set of an application gateway." + }, + "ApplicationGatewayRewriteRuleSetPropertiesFormat": { + "properties": { + "rewriteRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRule" + }, + "description": "Rewrite rules in the rewrite rule set." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Provisioning state of the rewrite rule set resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of rewrite rule set of the application gateway." + }, + "ApplicationGatewayRewriteRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the rewrite rule that is unique within an Application Gateway." + }, + "actionSet": { + "type": "object", + "$ref": "#/definitions/ApplicationGatewayRewriteRuleActionSet", + "description": "Set of actions to be done as part of the rewrite Rule." + } + }, + "description": "Rewrite rule of an application gateway." + }, + "ApplicationGatewayRewriteRuleActionSet": { + "properties": { + "requestHeaderConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHeaderConfiguration" + }, + "description": "Request Header Actions in the Action Set" + }, + "responseHeaderConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHeaderConfiguration" + }, + "description": "Response Header Actions in the Action Set" + } + }, + "description": "Set of actions in the Rewrite Rule in Application Gateway." + }, + "ApplicationGatewayHeaderConfiguration": { + "properties": { + "headerName": { + "type": "string", + "description": "Header name of the header configuration" + }, + "headerValue": { + "type": "string", + "description": "Header value of the header configuration" + } + }, + "description": "Header configuration of the Actions set in Application Gateway." + }, + "ApplicationGatewayRedirectConfigurationPropertiesFormat": { + "properties": { + "redirectType": { + "type": "string", + "$ref": "#/definitions/RedirectTypeEnum", + "description": "Supported http redirection types - Permanent, Temporary, Found, SeeOther.", + "x-ms-enum": { + "name": "ApplicationGatewayRedirectType", + "modelAsString": true + } + }, + "targetListener": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to a listener to redirect the request to." + }, + "targetUrl": { + "type": "string", + "description": "Url to redirect the request to." + }, + "includePath": { + "type": "boolean", + "description": "Include path in the redirected url." + }, + "includeQueryString": { + "type": "boolean", + "description": "Include query string in the redirected url." + }, + "requestRoutingRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Request routing specifying redirect configuration." + }, + "urlPathMaps": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Url path maps specifying default redirect configuration." + }, + "pathRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Path rules specifying redirect configuration." + } + }, + "description": "Properties of redirect configuration of the application gateway." + }, + "ApplicationGatewayRedirectConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRedirectConfigurationPropertiesFormat" + }, + "name": { + "type": "string", + "description": "Name of the redirect configuration that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Redirect configuration of an application gateway." + }, + "ApplicationGatewayPropertiesFormat": { + "properties": { + "sku": { + "$ref": "#/definitions/ApplicationGatewaySku", + "description": "SKU of the application gateway resource." + }, + "sslPolicy": { + "$ref": "#/definitions/ApplicationGatewaySslPolicy", + "description": "SSL policy of the application gateway resource." + }, + "operationalState": { + "readOnly": true, + "type": "string", + "description": "Operational state of the application gateway resource.", + "enum": [ + "Stopped", + "Starting", + "Running", + "Stopping" + ], + "x-ms-enum": { + "name": "ApplicationGatewayOperationalState", + "modelAsString": true + } + }, + "gatewayIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayIPConfiguration" + }, + "description": "Subnets of application the gateway resource." + }, + "authenticationCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayAuthenticationCertificate" + }, + "description": "Authentication certificates of the application gateway resource." + }, + "trustedRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayTrustedRootCertificate" + }, + "description": "Trusted Root certificates of the application gateway resource." + }, + "sslCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewaySslCertificate" + }, + "description": "SSL certificates of the application gateway resource." + }, + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFrontendIPConfiguration" + }, + "description": "Frontend IP addresses of the application gateway resource." + }, + "frontendPorts": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFrontendPort" + }, + "description": "Frontend ports of the application gateway resource." + }, + "probes": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayProbe" + }, + "description": "Probes of the application gateway resource." + }, + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool" + }, + "description": "Backend address pool of the application gateway resource." + }, + "backendHttpSettingsCollection": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettings" + }, + "description": "Backend http settings of the application gateway resource." + }, + "httpListeners": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHttpListener" + }, + "description": "Http listeners of the application gateway resource." + }, + "urlPathMaps": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayUrlPathMap" + }, + "description": "URL path map of the application gateway resource." + }, + "requestRoutingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRequestRoutingRule" + }, + "description": "Request routing rules of the application gateway resource." + }, + "rewriteRuleSets": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRuleSet" + }, + "description": "Rewrite rules for the application gateway resource." + }, + "redirectConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRedirectConfiguration" + }, + "description": "Redirect configurations of the application gateway resource." + }, + "webApplicationFirewallConfiguration": { + "$ref": "#/definitions/ApplicationGatewayWebApplicationFirewallConfiguration", + "description": "Web application firewall configuration." + }, + "enableHttp2": { + "type": "boolean", + "description": "Whether HTTP2 is enabled on the application gateway resource." + }, + "enableFips": { + "type": "boolean", + "description": "Whether FIPS is enabled on the application gateway resource." + }, + "autoscaleConfiguration": { + "$ref": "#/definitions/ApplicationGatewayAutoscaleConfiguration", + "description": "Autoscale Configuration." + }, + "resourceGuid": { + "type": "string", + "description": "Resource GUID property of the application gateway resource." + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the application gateway resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + }, + "customErrorConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayCustomError" + }, + "description": "Custom error configurations of the application gateway resource." + } + }, + "description": "Properties of the application gateway." + }, + "ApplicationGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPropertiesFormat" + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting where the resource needs to come from." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The identity of the application gateway, if configured." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Application gateway resource" + }, + "ApplicationGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGateway" + }, + "description": "List of an application gateways in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListApplicationGateways API service call." + }, + "ApplicationGatewayUrlPathMapPropertiesFormat": { + "properties": { + "defaultBackendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default backend address pool resource of URL path map." + }, + "defaultBackendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default backend http settings resource of URL path map." + }, + "defaultRewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default Rewrite rule set resource of URL path map." + }, + "defaultRedirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default redirect configuration resource of URL path map." + }, + "pathRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayPathRule" + }, + "description": "Path rule of URL path map resource." + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the backend http settings resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of UrlPathMap of the application gateway." + }, + "ApplicationGatewayUrlPathMap": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayUrlPathMapPropertiesFormat" + }, + "name": { + "type": "string", + "description": "Name of the URL path map that is unique within an Application Gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "UrlPathMaps give a url path to the backend mapping information for PathBasedRouting." + }, + "ApplicationGatewayWebApplicationFirewallConfiguration": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether the web application firewall is enabled or not." + }, + "firewallMode": { + "type": "string", + "description": "Web application firewall mode.", + "enum": [ + "Detection", + "Prevention" + ], + "x-ms-enum": { + "name": "ApplicationGatewayFirewallMode", + "modelAsString": true + } + }, + "ruleSetType": { + "type": "string", + "description": "The type of the web application firewall rule set. Possible values are: 'OWASP'." + }, + "ruleSetVersion": { + "type": "string", + "description": "The version of the rule set type." + }, + "disabledRuleGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallDisabledRuleGroup" + }, + "description": "The disabled rule groups." + }, + "requestBodyCheck": { + "type": "boolean", + "description": "Whether allow WAF to check request Body." + }, + "maxRequestBodySize": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maxium request body size for WAF." + }, + "maxRequestBodySizeInKb": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maxium request body size in Kb for WAF." + }, + "fileUploadLimitInMb": { + "type": "integer", + "format": "int32", + "maximum": 500, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false, + "description": "Maxium file upload size in Mb for WAF." + }, + "exclusions": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallExclusion" + }, + "description": "The exclusion list." + } + }, + "required": [ + "enabled", + "firewallMode", + "ruleSetType", + "ruleSetVersion" + ], + "description": "Application gateway web application firewall configuration." + }, + "ApplicationGatewayAutoscaleConfiguration": { + "properties": { + "minCapacity": { + "type": "integer", + "format": "int32", + "minimum": 2, + "exclusiveMinimum": false, + "description": "Lower bound on number of Application Gateway instances" + } + }, + "required": [ + "minCapacity" + ], + "description": "Application Gateway autoscale configuration." + }, + "ApplicationGatewayConnectionDraining": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether connection draining is enabled or not." + }, + "drainTimeoutInSec": { + "type": "integer", + "format": "int32", + "maximum": 3600, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false, + "description": "The number of seconds connection draining is active. Acceptable values are from 1 second to 3600 seconds." + } + }, + "required": [ + "enabled", + "drainTimeoutInSec" + ], + "description": "Connection draining allows open connections to a backend server to be active for a specified time after the backend server got removed from the configuration." + }, + "ApplicationGatewayFirewallDisabledRuleGroup": { + "properties": { + "ruleGroupName": { + "type": "string", + "description": "The name of the rule group that will be disabled." + }, + "rules": { + "type": "array", + "items": { + "type": "integer", + "format": "int32", + "x-nullable": false + }, + "description": "The list of rules that will be disabled. If null, all rules of the rule group will be disabled." + } + }, + "required": [ + "ruleGroupName" + ], + "description": "Allows to disable rules within a rule group or an entire rule group." + }, + "ApplicationGatewayFirewallExclusion": { + "properties": { + "matchVariable": { + "type": "string", + "description": "The variable to be excluded." + }, + "selectorMatchOperator": { + "type": "string", + "description": "When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to." + }, + "selector": { + "type": "string", + "description": "When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to." + } + }, + "required": [ + "matchVariable", + "selectorMatchOperator", + "selector" + ], + "description": "Allow to exclude some variable satisfy the condition for the WAF check" + }, + "ApplicationGatewayAvailableWafRuleSetsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRuleSet" + }, + "description": "The list of application gateway rule sets." + } + }, + "description": "Response for ApplicationGatewayAvailableWafRuleSets API service call." + }, + "ApplicationGatewayFirewallRuleSet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFirewallRuleSetPropertiesFormat" + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A web application firewall rule set." + }, + "ApplicationGatewayFirewallRuleSetPropertiesFormat": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state of the web application firewall rule set." + }, + "ruleSetType": { + "type": "string", + "description": "The type of the web application firewall rule set." + }, + "ruleSetVersion": { + "type": "string", + "description": "The version of the web application firewall rule set type." + }, + "ruleGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRuleGroup" + }, + "description": "The rule groups of the web application firewall rule set." + } + }, + "required": [ + "ruleSetType", + "ruleSetVersion", + "ruleGroups" + ], + "description": "Properties of the web application firewall rule set." + }, + "ApplicationGatewayFirewallRuleGroup": { + "properties": { + "ruleGroupName": { + "type": "string", + "description": "The name of the web application firewall rule group." + }, + "description": { + "type": "string", + "description": "The description of the web application firewall rule group." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRule" + }, + "description": "The rules of the web application firewall rule group." + } + }, + "required": [ + "ruleGroupName", + "rules" + ], + "description": "A web application firewall rule group." + }, + "ApplicationGatewayFirewallRule": { + "properties": { + "ruleId": { + "type": "integer", + "format": "int32", + "description": "The identifier of the web application firewall rule." + }, + "description": { + "type": "string", + "description": "The description of the web application firewall rule." + } + }, + "required": [ + "ruleId" + ], + "description": "A web application firewall rule." + }, + "ApplicationGatewayAvailableSslOptions": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayAvailableSslOptionsPropertiesFormat" + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Response for ApplicationGatewayAvailableSslOptions API service call." + }, + "ApplicationGatewayAvailableSslOptionsPropertiesFormat": { + "properties": { + "predefinedPolicies": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of available Ssl predefined policy." + }, + "defaultPolicy": { + "$ref": "#/definitions/PolicyNameEnum", + "description": "Name of the Ssl predefined policy applied by default to application gateway" + }, + "availableCipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "List of available Ssl cipher suites." + }, + "availableProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/ProtocolsEnum" + }, + "description": "List of available Ssl protocols." + } + }, + "description": "Properties of ApplicationGatewayAvailableSslOptions" + }, + "ApplicationGatewayAvailableSslPredefinedPolicies": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicy" + }, + "description": "List of available Ssl predefined policy." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ApplicationGatewayAvailableSslOptions API service call." + }, + "ApplicationGatewaySslPredefinedPolicy": { + "properties": { + "name": { + "type": "string", + "description": "Name of the Ssl predefined policy." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicyPropertiesFormat" + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "An Ssl predefined policy" + }, + "ApplicationGatewaySslPredefinedPolicyPropertiesFormat": { + "properties": { + "cipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "Ssl cipher suites to be enabled in the specified order for application gateway." + }, + "minProtocolVersion": { + "$ref": "#/definitions/ProtocolsEnum", + "description": "Minimum version of Ssl protocol to be supported on application gateway." + } + }, + "description": "Properties of ApplicationGatewaySslPredefinedPolicy" + }, + "ApplicationGatewayCustomError": { + "properties": { + "statusCode": { + "type": "string", + "description": "Status code of the application gateway customer error.", + "enum": [ + "HttpStatus403", + "HttpStatus502" + ], + "x-ms-enum": { + "name": "ApplicationGatewayCustomErrorStatusCode", + "modelAsString": true + } + }, + "customErrorPageUrl": { + "type": "string", + "description": "Error page URL of the application gateway customer error." + } + }, + "description": "Customer error of an application gateway." + }, + "PolicyNameEnum": { + "type": "string", + "description": "Ssl predefined policy name enums.", + "enum": [ + "AppGwSslPolicy20150501", + "AppGwSslPolicy20170401", + "AppGwSslPolicy20170401S" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslPolicyName", + "modelAsString": true + } + }, + "ProtocolsEnum": { + "type": "string", + "description": "Ssl protocol enums.", + "enum": [ + "TLSv1_0", + "TLSv1_1", + "TLSv1_2" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslProtocol", + "modelAsString": true + } + }, + "CipherSuitesEnum": { + "type": "string", + "description": "Ssl cipher suites enums.", + "enum": [ + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslCipherSuite", + "modelAsString": true + } + }, + "RedirectTypeEnum": { + "type": "string", + "enum": [ + "Permanent", + "Found", + "SeeOther", + "Temporary" + ], + "x-ms-enum": { + "name": "ApplicationGatewayRedirectType", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/applicationSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/applicationSecurityGroup.json new file mode 100644 index 000000000000..084c7c0edd3d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/applicationSecurityGroup.json @@ -0,0 +1,303 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}": { + "delete": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_Delete", + "description": "Deletes the specified application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete application security group": { "$ref": "./examples/ApplicationSecurityGroupDelete.json" } + } + }, + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_Get", + "description": "Gets information about the specified application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + } + }, + "x-ms-examples": { + "Get application security group": { "$ref": "./examples/ApplicationSecurityGroupGet.json" } + } + }, + "put": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_CreateOrUpdate", + "description": "Creates or updates an application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + }, + "description": "Parameters supplied to the create or update ApplicationSecurityGroup operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create application security group": { "$ref": "./examples/ApplicationSecurityGroupCreate.json" } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationSecurityGroups": { + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_ListAll", + "description": "Gets all application security groups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of application security group resources.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all application security groups": { "$ref": "./examples/ApplicationSecurityGroupListAll.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups": { + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_List", + "description": "Gets all the application security groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of application security group resources.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroupListResult" + } + } + }, + "x-ms-examples": { + "List load balancers in resource group": { "$ref": "./examples/ApplicationSecurityGroupList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ApplicationSecurityGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationSecurityGroupPropertiesFormat", + "description": "Properties of the application security group." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "An application security group in a resource group." + }, + "ApplicationSecurityGroupPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the application security group resource. It uniquely identifies a resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the application security group resource. Possible values are: 'Succeeded', 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Application security group properties." + }, + "ApplicationSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationSecurityGroup" + }, + "description": "A list of application security groups." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "A list of application security groups." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/availableDelegations.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/availableDelegations.json new file mode 100644 index 000000000000..20ead88fbf83 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/availableDelegations.json @@ -0,0 +1,166 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/availableDelegations": { + "get": { + "operationId": "AvailableDelegations_List", + "description": "Gets all of the available subnet delegations for this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the possible delegations for a subnet in this subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableDelegationsResult" + } + } + }, + "x-ms-examples": { + "Get available delegations": { + "$ref": "./examples/AvailableDelegationsSubscriptionGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availableDelegations": { + "get": { + "operationId": "AvailableResourceGroupDelegations_List", + "description": "Gets all of the available subnet delegations for this resource group in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the possible delegations for a subnet in this subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableDelegationsResult" + } + } + }, + "x-ms-examples": { + "Get available delegations in the resource group": { + "$ref": "./examples/AvailableDelegationsResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AvailableDelegationsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableDelegation" + }, + "description": "An array of available delegations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available delegations." + }, + "AvailableDelegation": { + "properties": { + "name": { + "type": "string", + "description": "The name of the AvailableDelegation resource." + }, + "id": { + "type": "string", + "description": "A unique identifier of the AvailableDelegation resource." + }, + "type": { + "type": "string", + "description": "Resource type." + }, + "serviceName": { + "type": "string", + "description": "The name of the service and resource " + }, + "actions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Describes the actions permitted to the service upon delegation" + } + }, + "description": "The serviceName of an AvailableDelegation indicates a possible delegation for a subnet." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/azureFirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/azureFirewall.json new file mode 100644 index 000000000000..8f2e6b532036 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/azureFirewall.json @@ -0,0 +1,766 @@ +{ + "swagger":"2.0", + "info":{ + "title":"NetworkManagementClient", + "description":"The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host":"management.azure.com", + "schemes":[ + "https" + ], + "consumes":[ + "application/json" + ], + "produces":[ + "application/json" + ], + "security":[ + { + "azure_auth":[ + "user_impersonation" + ] + } + ], + "securityDefinitions":{ + "azure_auth":{ + "type":"oauth2", + "authorizationUrl":"https://login.microsoftonline.com/common/oauth2/authorize", + "flow":"implicit", + "description":"Azure Active Directory OAuth2 Flow", + "scopes":{ + "user_impersonation":"impersonate your user account" + } + } + }, + "paths":{ + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls/{azureFirewallName}":{ + "delete":{ + "tags":[ + "AzureFirewalls" + ], + "operationId":"AzureFirewalls_Delete", + "description":"Deletes the specified Azure Firewall.", + "parameters":[ + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"azureFirewallName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the Azure Firewall." + }, + { + "$ref":"./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref":"./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses":{ + "202":{ + "description":"Accepted and the operation will complete asynchronously." + }, + "204":{ + "description":"Request successful. Resource with the specified name does not exist" + }, + "200":{ + "description":"Delete successful." + } + }, + "x-ms-examples":{ + "Delete Azure Firewall":{ + "$ref":"./examples/AzureFirewallDelete.json" + } + }, + "x-ms-long-running-operation":true + }, + "get":{ + "tags":[ + "AzureFirewalls" + ], + "operationId":"AzureFirewalls_Get", + "description":"Gets the specified Azure Firewall.", + "parameters":[ + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"azureFirewallName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the Azure Firewall." + }, + { + "$ref":"./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref":"./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses":{ + "200":{ + "description":"Request successful. The operation returns an AzureFirewall resource.", + "schema":{ + "$ref":"#/definitions/AzureFirewall" + } + } + }, + "x-ms-examples":{ + "Get Azure Firewall":{ + "$ref":"./examples/AzureFirewallGet.json" + } + } + }, + "put":{ + "tags":[ + "AzureFirewalls" + ], + "operationId":"AzureFirewalls_CreateOrUpdate", + "description":"Creates or updates the specified Azure Firewall.", + "parameters":[ + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "name":"azureFirewallName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the Azure Firewall." + }, + { + "name":"parameters", + "in":"body", + "required":true, + "schema":{ + "$ref":"#/definitions/AzureFirewall" + }, + "description":"Parameters supplied to the create or update Azure Firewall operation." + }, + { + "$ref":"./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref":"./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses":{ + "201":{ + "description":"Create successful. The operation returns the resulting AzureFirewall resource.", + "schema":{ + "$ref":"#/definitions/AzureFirewall" + } + }, + "200":{ + "description":"Update successful. The operation returns the resulting AzureFirewall resource.", + "schema":{ + "$ref":"#/definitions/AzureFirewall" + } + } + }, + "x-ms-examples":{ + "Create Azure Firewall":{ + "$ref":"./examples/AzureFirewallPut.json" + } + }, + "x-ms-long-running-operation":true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls":{ + "get":{ + "tags":[ + "AzureFirewalls" + ], + "operationId":"AzureFirewalls_List", + "description":"Lists all Azure Firewalls in a resource group.", + "parameters":[ + { + "name":"resourceGroupName", + "in":"path", + "required":true, + "type":"string", + "description":"The name of the resource group." + }, + { + "$ref":"./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref":"./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses":{ + "200":{ + "description":"Success. The operation returns a list of AzureFirewall resources.", + "schema":{ + "$ref":"#/definitions/AzureFirewallListResult" + } + } + }, + "x-ms-examples":{ + "List all Azure Firewalls for a given resource group":{ + "$ref":"./examples/AzureFirewallListByResourceGroup.json" + } + }, + "x-ms-pageable":{ + "nextLinkName":"nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/azureFirewalls":{ + "get":{ + "tags":[ + "AzureFirewalls" + ], + "operationId":"AzureFirewalls_ListAll", + "description":"Gets all the Azure Firewalls in a subscription.", + "parameters":[ + { + "$ref":"./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref":"./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses":{ + "200":{ + "description":"Success. The operation returns a list of AzureFirewall resources.", + "schema":{ + "$ref":"#/definitions/AzureFirewallListResult" + } + } + }, + "x-ms-examples":{ + "List all Azure Firewalls for a given subscription":{ + "$ref":"./examples/AzureFirewallListBySubscription.json" + } + }, + "x-ms-pageable":{ + "nextLinkName":"nextLink" + } + } + } + }, + "definitions":{ + "AzureFirewallIPConfigurationPropertiesFormat":{ + "properties":{ + "privateIPAddress": { + "type": "string", + "readOnly": true, + "description": "The Firewall Internal Load Balancer IP to be used as the next hop in User Defined Routes." + }, + "subnet":{ + "$ref":"./network.json#/definitions/SubResource", + "description":"Reference of the subnet resource. This resource must be named 'AzureFirewallSubnet'." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the PublicIP resource. This field is a mandatory input if subnet is not null." + }, + "provisioningState":{ + "description":"The provisioning state of the resource.", + "$ref":"#/definitions/ProvisioningState" + } + }, + "description":"Properties of IP configuration of an Azure Firewall." + }, + "AzureFirewallIPConfiguration":{ + "properties":{ + "properties":{ + "x-ms-client-flatten":true, + "$ref":"#/definitions/AzureFirewallIPConfigurationPropertiesFormat" + }, + "name":{ + "type":"string", + "description":"Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag":{ + "type":"string", + "readOnly": true, + "description":"A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf":[ + { + "$ref":"./network.json#/definitions/SubResource" + } + ], + "description":"IP configuration of an Azure Firewall." + }, + "AzureFirewallPropertiesFormat":{ + "properties":{ + "applicationRuleCollections":{ + "type":"array", + "items":{ + "$ref":"#/definitions/AzureFirewallApplicationRuleCollection" + }, + "description":"Collection of application rule collections used by Azure Firewall." + }, + "natRuleCollections":{ + "type":"array", + "items":{ + "$ref":"#/definitions/AzureFirewallNatRuleCollection" + }, + "description":"Collection of NAT rule collections used by Azure Firewall." + }, + "networkRuleCollections":{ + "type":"array", + "items":{ + "$ref":"#/definitions/AzureFirewallNetworkRuleCollection" + }, + "description":"Collection of network rule collections used by Azure Firewall." + }, + "ipConfigurations":{ + "type":"array", + "items":{ + "$ref":"#/definitions/AzureFirewallIPConfiguration" + }, + "description":"IP configuration of the Azure Firewall resource." + }, + "provisioningState":{ + "description":"The provisioning state of the resource.", + "$ref":"#/definitions/ProvisioningState" + } + }, + "description":"Properties of the Azure Firewall." + }, + "AzureFirewall":{ + "properties":{ + "properties":{ + "x-ms-client-flatten":true, + "$ref":"#/definitions/AzureFirewallPropertiesFormat" + }, + "etag":{ + "type":"string", + "readOnly":true, + "description":"Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf":[ + { + "$ref":"./network.json#/definitions/Resource" + } + ], + "description":"Azure Firewall resource" + }, + "AzureFirewallListResult":{ + "properties":{ + "value":{ + "type":"array", + "items":{ + "$ref":"#/definitions/AzureFirewall" + }, + "description":"List of Azure Firewalls in a resource group." + }, + "nextLink":{ + "type":"string", + "description":"URL to get the next set of results." + } + }, + "description":"Response for ListAzureFirewalls API service call." + }, + "AzureFirewallApplicationRuleCollectionPropertiesFormat":{ + "properties":{ + "priority":{ + "type":"integer", + "format":"int32", + "maximum":65000, + "exclusiveMaximum":false, + "minimum":100, + "exclusiveMinimum":false, + "description":"Priority of the application rule collection resource." + }, + "action":{ + "$ref":"#/definitions/AzureFirewallRCAction", + "description":"The action type of a rule collection" + }, + "rules":{ + "type":"array", + "items":{ + "$ref":"#/definitions/AzureFirewallApplicationRule" + }, + "description":"Collection of rules used by a application rule collection." + }, + "provisioningState":{ + "description":"The provisioning state of the resource.", + "$ref":"#/definitions/ProvisioningState" + } + }, + "description":"Properties of the application rule collection." + }, + "AzureFirewallApplicationRuleCollection":{ + "properties":{ + "properties":{ + "x-ms-client-flatten":true, + "$ref":"#/definitions/AzureFirewallApplicationRuleCollectionPropertiesFormat" + }, + "name":{ + "type":"string", + "description":"Gets name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag":{ + "type":"string", + "readOnly":true, + "description":"Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf":[ + { + "$ref":"./network.json#/definitions/SubResource" + } + ], + "description":"Application rule collection resource" + }, + "AzureFirewallApplicationRuleProtocol":{ + "properties":{ + "protocolType":{ + "description":"Protocol type", + "$ref":"#/definitions/AzureFirewallApplicationRuleProtocolType" + }, + "port":{ + "type":"integer", + "format":"int32", + "maximum":64000, + "exclusiveMaximum":false, + "minimum":0, + "exclusiveMinimum":false, + "description":"Port number for the protocol, cannot be greater than 64000. This field is optional." + } + }, + "description":"Properties of the application rule protocol." + }, + "AzureFirewallApplicationRule":{ + "properties":{ + "name":{ + "type":"string", + "description":"Name of the application rule." + }, + "description":{ + "type":"string", + "description":"Description of the rule." + }, + "sourceAddresses":{ + "type":"array", + "description":"List of source IP addresses for this rule.", + "items":{ + "type":"string" + } + }, + "protocols":{ + "type":"array", + "items":{ + "$ref":"#/definitions/AzureFirewallApplicationRuleProtocol" + }, + "description":"Array of ApplicationRuleProtocols." + }, + "targetFqdns":{ + "type":"array", + "description":"List of FQDNs for this rule.", + "items":{ + "type":"string" + } + }, + "fqdnTags":{ + "type":"array", + "description":"List of FQDN Tags for this rule.", + "items":{ + "type":"string" + } + } + }, + "description":"Properties of an application rule." + }, + "AzureFirewallNatRuleCollectionProperties": { + "properties":{ + "priority":{ + "type":"integer", + "format":"int32", + "maximum":65000, + "exclusiveMaximum":false, + "minimum":100, + "exclusiveMinimum":false, + "description":"Priority of the NAT rule collection resource." + }, + "action":{ + "$ref":"#/definitions/AzureFirewallNatRCAction", + "description":"The action type of a NAT rule collection" + }, + "rules":{ + "type":"array", + "items":{ + "$ref":"#/definitions/AzureFirewallNatRule" + }, + "description":"Collection of rules used by a NAT rule collection." + }, + "provisioningState":{ + "description":"The provisioning state of the resource.", + "$ref":"#/definitions/ProvisioningState" + } + }, + "description":"Properties of the NAT rule collection." + }, + "AzureFirewallNatRuleCollection":{ + "properties":{ + "properties":{ + "x-ms-client-flatten":true, + "$ref":"#/definitions/AzureFirewallNatRuleCollectionProperties" + }, + "name":{ + "type":"string", + "description":"Gets name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag":{ + "type":"string", + "readOnly":true, + "description":"Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf":[ + { + "$ref":"./network.json#/definitions/SubResource" + } + ], + "description":"NAT rule collection resource" + }, + "AzureFirewallNatRule":{ + "properties":{ + "name":{ + "type":"string", + "description":"Name of the NAT rule." + }, + "description":{ + "type":"string", + "description":"Description of the rule." + }, + "sourceAddresses":{ + "type":"array", + "description":"List of source IP addresses for this rule.", + "items":{ + "type":"string" + } + }, + "destinationAddresses":{ + "type":"array", + "description":"List of destination IP addresses for this rule.", + "items":{ + "type":"string" + } + }, + "destinationPorts":{ + "type":"array", + "description":"List of destination ports.", + "items":{ + "type":"string" + } + }, + "protocols":{ + "type":"array", + "items":{ + "$ref":"#/definitions/AzureFirewallNetworkRuleProtocol" + }, + "description":"Array of AzureFirewallNetworkRuleProtocols applicable to this NAT rule." + }, + "translatedAddress":{ + "type":"string", + "description":"The translated address for this NAT rule." + }, + "translatedPort":{ + "type":"string", + "description":"The translated port for this NAT rule." + } + }, + "description":"Properties of a NAT rule." + }, + "AzureFirewallNatRCAction":{ + "properties":{ + "type":{ + "description":"The type of action.", + "$ref":"#/definitions/AzureFirewallNatRCActionType" + } + }, + "description":"AzureFirewall NAT Rule Collection Action." + }, + "AzureFirewallNatRCActionType":{ + "type":"string", + "description":"The action type of a NAT rule collection", + "enum":[ + "Snat", + "Dnat" + ], + "x-ms-enum":{ + "name":"AzureFirewallNatRCActionType", + "modelAsString":true + } + }, + "AzureFirewallNetworkRuleCollectionPropertiesFormat":{ + "properties":{ + "priority":{ + "type":"integer", + "format":"int32", + "maximum":65000, + "exclusiveMaximum":false, + "minimum":100, + "exclusiveMinimum":false, + "description":"Priority of the network rule collection resource." + }, + "action":{ + "$ref":"#/definitions/AzureFirewallRCAction", + "description":"The action type of a rule collection" + }, + "rules":{ + "type":"array", + "items":{ + "$ref":"#/definitions/AzureFirewallNetworkRule" + }, + "description":"Collection of rules used by a network rule collection." + }, + "provisioningState":{ + "description":"The provisioning state of the resource.", + "$ref":"#/definitions/ProvisioningState" + } + }, + "description":"Properties of the network rule collection." + }, + "AzureFirewallNetworkRuleCollection":{ + "properties":{ + "properties":{ + "x-ms-client-flatten":true, + "$ref":"#/definitions/AzureFirewallNetworkRuleCollectionPropertiesFormat" + }, + "name":{ + "type":"string", + "description":"Gets name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag":{ + "type":"string", + "readOnly":true, + "description":"Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf":[ + { + "$ref":"./network.json#/definitions/SubResource" + } + ], + "description":"Network rule collection resource" + }, + "AzureFirewallNetworkRule":{ + "properties":{ + "name":{ + "type":"string", + "description":"Name of the network rule." + }, + "description":{ + "type":"string", + "description":"Description of the rule." + }, + "protocols":{ + "type":"array", + "items":{ + "$ref":"#/definitions/AzureFirewallNetworkRuleProtocol" + }, + "description":"Array of AzureFirewallNetworkRuleProtocols." + }, + "sourceAddresses":{ + "type":"array", + "description":"List of source IP addresses for this rule.", + "items":{ + "type":"string" + } + }, + "destinationAddresses":{ + "type":"array", + "description":"List of destination IP addresses.", + "items":{ + "type":"string" + } + }, + "destinationPorts":{ + "type":"array", + "description":"List of destination ports.", + "items":{ + "type":"string" + } + } + }, + "description":"Properties of the network rule." + }, + "AzureFirewallRCAction":{ + "properties":{ + "type":{ + "description":"The type of action.", + "$ref":"#/definitions/AzureFirewallRCActionType" + } + }, + "description":"Properties of the AzureFirewallRCAction." + }, + "AzureFirewallRCActionType":{ + "type":"string", + "description":"The action type of a rule collection", + "enum":[ + "Allow", + "Deny" + ], + "x-ms-enum":{ + "name":"AzureFirewallRCActionType", + "modelAsString":true + } + }, + "ProvisioningState":{ + "type":"string", + "readOnly":true, + "description":"The current provisisoning state.", + "enum":[ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "x-ms-enum":{ + "name":"ProvisioningState", + "modelAsString":true + } + }, + "AzureFirewallNetworkRuleProtocol":{ + "type":"string", + "description":"The protocol of a Network Rule resource", + "enum":[ + "TCP", + "UDP", + "Any", + "ICMP" + ], + "x-ms-enum":{ + "name":"AzureFirewallNetworkRuleProtocol", + "modelAsString":true + } + }, + "AzureFirewallApplicationRuleProtocolType":{ + "type":"string", + "description":"The protocol type of a Application Rule resource", + "enum":[ + "Http", + "Https" + ], + "x-ms-enum":{ + "name":"AzureFirewallApplicationRuleProtocolType", + "modelAsString":true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/azureFirewallFqdnTag.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/azureFirewallFqdnTag.json new file mode 100644 index 000000000000..75a03f80935e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/azureFirewallFqdnTag.json @@ -0,0 +1,139 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/azureFirewallFqdnTags": { + "get": { + "tags": [ + "AzureFirewallFqdnTags" + ], + "operationId": "AzureFirewallFqdnTags_ListAll", + "description":"Gets all the Azure Firewall FQDN Tags in a subscription.", + "parameters":[ + { + "$ref":"#/parameters/ApiVersionParameter" + }, + { + "$ref":"#/parameters/SubscriptionIdParameter" + } + ], + "responses":{ + "200":{ + "description":"Success. The operation returns a list of Azure Firewall FQDN Tag resources.", + "schema":{ + "$ref":"#/definitions/AzureFirewallFqdnTagListResult" + } + } + }, + "x-ms-examples":{ + "List all Azure Firewall FQDN Tags for a given subscription":{ + "$ref":"./examples/AzureFirewallFqdnTagsListBySubscription.json" + } + }, + "x-ms-pageable":{ + "nextLinkName":"nextLink" + } + } + } + }, + "definitions": { + "AzureFirewallFqdnTagPropertiesFormat": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioning state of the resource." + }, + "fqdnTagName": { + "type": "string", + "readOnly": true, + "description": "The name of this FQDN Tag." + } + }, + "description": "Azure Firewall FQDN Tag Properties" + }, + "AzureFirewallFqdnTag": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallFqdnTagPropertiesFormat" + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Azure Firewall FQDN Tag Resource" + }, + "AzureFirewallFqdnTagListResult":{ + "properties":{ + "value":{ + "type":"array", + "items":{ + "$ref":"#/definitions/AzureFirewallFqdnTag" + }, + "description":"List of Azure Firewall FQDN Tags in a resource group." + }, + "nextLink":{ + "type":"string", + "description":"URL to get the next set of results." + } + }, + "description":"Response for ListAzureFirewallFqdnTags API service call." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/checkDnsAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/checkDnsAvailability.json new file mode 100644 index 000000000000..e4e65fe3e152 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/checkDnsAvailability.json @@ -0,0 +1,88 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/CheckDnsNameAvailability": { + "get": { + "operationId": "CheckDnsNameAvailability", + "description": "Checks whether a domain name in the cloudapp.azure.com zone is available for use.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "domainNameLabel", + "in": "query", + "required": true, + "type": "string", + "description": "The domain name to be verified. It must conform to the following regular expression: ^[a-z][a-z0-9-]{1,61}[a-z0-9]$." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the DNS name is available.", + "schema": { + "$ref": "#/definitions/DnsNameAvailabilityResult" + } + } + }, + "x-ms-examples": { + "Check Dns Name Availability": { "$ref": "./examples/CheckDnsNameAvailability.json" } + } + } + } + }, + "definitions": { + "DnsNameAvailabilityResult": { + "properties": { + "available": { + "type": "boolean", + "description": "Domain availability (True/False)." + } + }, + "description": "Response for the CheckDnsNameAvailability API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/ddosCustomPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/ddosCustomPolicy.json new file mode 100644 index 000000000000..19cec5f81827 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/ddosCustomPolicy.json @@ -0,0 +1,299 @@ +{ + "swagger": "2.0", + "info": { + "title": "DDoSCustomPolicyClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosCustomPolicies/{ddosCustomPolicyName}": { + "delete": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_Delete", + "description": "Deletes the specified DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyDelete.json" + } + } + }, + "get": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_Get", + "description": "Gets information about the specified DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + } + }, + "x-ms-examples": { + "Get DDoS custom policy": { "$ref": "./examples/DdosCustomPolicyGet.json" } + } + }, + "put": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_CreateOrUpdate", + "description": "Creates or updates a DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + }, + "description": "Parameters supplied to the create or update operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyCreate.json" + } + } + } + } + }, + "definitions": { + "DdosCustomPolicy": { + "description": "A DDoS custom policy in a resource group.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DdosCustomPolicyPropertiesFormat", + "description": "Properties of the DDoS custom policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + } + }, + "DdosCustomPolicyPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the DDoS custom policy resource. It uniquely identifies the resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the DDoS custom policy resource. Possible values are: 'Succeeded', 'Updating', 'Deleting', and 'Failed'." + }, + "publicIPAddresses": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The list of public IPs associated with the DDoS custom policy resource. This list is read-only." + }, + "protocolCustomSettings": { + "readOnly": false, + "type": "array", + "items": { + "$ref": "#/definitions/ProtocolCustomSettingsFormat" + }, + "description": "The protocol-specific DDoS policy customization parameters." + } + }, + "description": "DDoS custom policy properties." + }, + "ProtocolCustomSettingsFormat": { + "properties": { + "protocol": { + "readOnly": false, + "type": "string", + "enum": [ + "Tcp", + "Udp", + "Syn" + ], + "x-ms-enum": { + "name": "The protocol for which the DDoS protection policy is being customized.", + "modelAsString": true + }, + "description": "The protocol for which the DDoS protection policy is being customized." + }, + "triggerRateOverride": { + "readOnly": false, + "type": "string", + "description": "The customized DDoS protection trigger rate." + }, + "sourceRateOverride": { + "readOnly": false, + "type": "string", + "description": "The customized DDoS protection source rate." + }, + "triggerSensitivityOverride": { + "readOnly": false, + "type": "string", + "enum": [ + "Relaxed", + "Low", + "Default", + "High" + ], + "x-ms-enum": { + "name": "The customized DDoS protection trigger rate sensitivity degrees. High: Trigger rate set with most sensitivity w.r.t. normal traffic. Default: Trigger rate set with moderate sensitivity w.r.t. normal traffic. Low: Trigger rate set with less sensitivity w.r.t. normal traffic. Relaxed: Trigger rate set with least sensitivity w.r.t. normal traffic.", + "modelAsString": true + }, + "description": "The customized DDoS protection trigger rate sensitivity degrees. High: Trigger rate set with most sensitivity w.r.t. normal traffic. Default: Trigger rate set with moderate sensitivity w.r.t. normal traffic. Low: Trigger rate set with less sensitivity w.r.t. normal traffic. Relaxed: Trigger rate set with least sensitivity w.r.t. normal traffic." + } + }, + "description": "DDoS custom policy properties." + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/ddosProtectionPlan.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/ddosProtectionPlan.json new file mode 100644 index 000000000000..7ebc2a166b60 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/ddosProtectionPlan.json @@ -0,0 +1,343 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans/{ddosProtectionPlanName}": { + "delete": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_Delete", + "description": "Deletes the specified DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanDelete.json" + } + } + }, + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_Get", + "description": "Gets information about the specified DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + } + }, + "x-ms-examples": { + "Get DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanGet.json" + } + } + }, + "put": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_CreateOrUpdate", + "description": "Creates or updates a DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + }, + "description": "Parameters supplied to the create or update operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ddosProtectionPlans": { + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_List", + "description": "Gets all DDoS protection plans in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of DDoS protection plan resources.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlanListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all DDoS protection plans": { + "$ref": "./examples/DdosProtectionPlanListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans": { + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_ListByResourceGroup", + "description": "Gets all the DDoS protection plans in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of DDoS protection plan resources.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlanListResult" + } + } + }, + "x-ms-examples": { + "List DDoS protection plans in resource group": { + "$ref": "./examples/DdosProtectionPlanList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "DdosProtectionPlan": { + "description": "A DDoS protection plan in a resource group.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DdosProtectionPlanPropertiesFormat", + "description": "Properties of the DDoS protection plan." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + } + }, + "DdosProtectionPlanPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the DDoS protection plan resource. It uniquely identifies the resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the DDoS protection plan resource. Possible values are: 'Succeeded', 'Updating', 'Deleting', and 'Failed'." + }, + "virtualNetworks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The list of virtual networks associated with the DDoS protection plan resource. This list is read-only." + } + }, + "description": "DDoS protection plan properties." + }, + "DdosProtectionPlanListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DdosProtectionPlan" + }, + "description": "A list of DDoS protection plans." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "A list of DDoS protection plans." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/endpointService.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/endpointService.json new file mode 100644 index 000000000000..401768bde2d8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/endpointService.json @@ -0,0 +1,111 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/virtualNetworkAvailableEndpointServices": { + "get": { + "operationId": "AvailableEndpointServices_List", + "description": "List what values of endpoint services are available for use.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location to check available endpoint services." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns list of available endpoint services.", + "schema": { + "$ref": "#/definitions/EndpointServicesListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "EndpointServicesList": { "$ref": "./examples/EndpointServicesList.json" } + } + } + } + }, + "definitions": { + "EndpointServicesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EndpointServiceResult" + }, + "description": "List of available endpoint services in a region." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListAvailableEndpointServices API service call." + }, + "EndpointServiceResult": { + "properties": { + "name": { + "type": "string", + "description": "Name of the endpoint service.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Type of the endpoint service.", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Endpoint service." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayAvailableSslOptionsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayAvailableSslOptionsGet.json new file mode 100644 index 000000000000..6d66cdb64e72 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayAvailableSslOptionsGet.json @@ -0,0 +1,9 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json new file mode 100644 index 000000000000..6d66cdb64e72 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json @@ -0,0 +1,9 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json new file mode 100644 index 000000000000..ad747a7b4fa1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "predefinedPolicyName": "AppGwSslPolicy20150501" + }, + "responses": { + "200": { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json new file mode 100644 index 000000000000..e2585c7e5cb1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "OWASP_3.0", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets/", + "type": "Microsoft.Network/applicationGatewayAvailableWafRuleSets", + "properties": { + "provisioningState": "Succeeded", + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0", + "ruleGroups": [ + { + "ruleGroupName": "General", + "description": "", + "rules": [ + { + "ruleId": 200004, + "description": "Possible Multipart Unmatched Boundary." + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayBackendHealthGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayBackendHealthGet.json new file mode 100644 index 000000000000..9af3e6f93705 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayBackendHealthGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "appgw", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "backendAddressPools": [ + { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHttpSettingsCollection": [ + { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.8", + "health": "Up" + } + ] + } + ] + }, + { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFPool" + }, + "backendHttpSettingsCollection": [ + { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.4", + "health": "Up" + }, + { + "address": "10.220.1.5", + "health": "Up" + } + ] + } + ] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayCreate.json new file mode 100644 index 000000000000..3b640744e2d6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayCreate.json @@ -0,0 +1,701 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "parameters": { + "identity": { + "type":"UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "****", + "password": "****" + } + }, + { + "name": "sslcert2", + "properties": { + "keyVaultSecretId": "https://kv/secret" + } + } + ], + "trustedRootCertificates": [ + { + "name": "rootcert", + "properties": { + "data": "****" + } + }, + { + "name": "rootcert1", + "properties": { + "keyVaultSecretId": "https://kv/secret" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + }, + { + "name": "appgwfp80", + "properties": { + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "properties": { + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "properties": { + "paths": [ + "/api", "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "properties": { + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "properties": { + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ] + } + } + ] + } + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ] + } + } + ] + } + } + ], + "probes": [] + } + } + }, + "200": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ] + } + } + ] + } + } + ], + "probes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayDelete.json new file mode 100644 index 000000000000..675d0a7100be --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "202": {}, + "204": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayGet.json new file mode 100644 index 000000000000..958bfbb834a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayGet.json @@ -0,0 +1,242 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ] + } + } + ] + } + } + ], + "probes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayList.json new file mode 100644 index 000000000000..6caca13c3e12 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayList.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "base64-pfxData", + "password": "pass1" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayListAll.json new file mode 100644 index 000000000000..6a5053bae370 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayListAll.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "base64-pfxData", + "password": "pass1" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayStart.json new file mode 100644 index 000000000000..e52e677b0bac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayStart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayStop.json new file mode 100644 index 000000000000..e52e677b0bac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayStop.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayUpdateTags.json new file mode 100644 index 000000000000..409842289572 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationGatewayUpdateTags.json @@ -0,0 +1,148 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "applicationGatewayName" : "AppGw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "AppGw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw", + "type": "Microsoft.Network/applicationGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "sku": { + "name": "Standard_Small", + "tier": "Standard", + "capacity": 2 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "GatewayIp01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/gatewayIPConfigurations/GatewayIp01", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet1" + } + } + } + ], + "sslCertificates": [], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "FrontEndConfig01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendIPConfigurations/FrontEndConfig01", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/publicIp1" + } + } + } + ], + "frontendPorts": [ + { + "name": "FrontEndPort01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendPorts/FrontEndPort01", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "Pool01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendAddressPools/Pool01", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [ + { + "ipAddress": "10.10.10.1" + }, + { + "ipAddress": "10.10.10.2" + }, + { + "ipAddress": "10.10.10.3" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "PoolSetting01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendHttpSettingsCollection/PoolSetting01", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "pickHostNameFromBackendAddress": false, + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "listener1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/httpListeners/listener1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendIPConfigurations/FrontEndConfig01" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendPorts/FrontEndPort01" + }, + "protocol": "Http", + "requireServerNameIndication": false + } + } + ], + "urlPathMaps": [], + "requestRoutingRules": [ + { + "name": "Rule01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/requestRoutingRules/Rule01", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/httpListeners/listener1" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendAddressPools/Pool01" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendHttpSettingsCollection/PoolSetting01" + } + } + } + ], + "probes": [], + "redirectConfigurations": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationSecurityGroupCreate.json new file mode 100644 index 000000000000..e4edff71c6ae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationSecurityGroupCreate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg", + "parameters": { + "location": "westus", + "properties": { } + } + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + }, + "201": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationSecurityGroupDelete.json new file mode 100644 index 000000000000..1943af35b4b6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg" + }, + "responses": { + "200": { }, + "202": { }, + "204": { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationSecurityGroupGet.json new file mode 100644 index 000000000000..befe6157d022 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationSecurityGroupGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg" + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationSecurityGroupList.json new file mode 100644 index 000000000000..a949885965dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationSecurityGroupList.json @@ -0,0 +1,35 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg1", + "name": "asg1", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg2", + "name": "asg2", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } + } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationSecurityGroupListAll.json new file mode 100644 index 000000000000..1ffb2e1635e7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ApplicationSecurityGroupListAll.json @@ -0,0 +1,34 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg1", + "name": "asg1", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg2", + "name": "asg2", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AvailableDelegationsResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AvailableDelegationsResourceGroupGet.json new file mode 100644 index 000000000000..c15e73cc32e8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AvailableDelegationsResourceGroupGet.json @@ -0,0 +1,25 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "location": "regionName", + "subscriptionId" : "subId", + "resourceGroupName" : "rg1" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "Microsoft.Provider.resourceType", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/availableDelegations/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availableDelegations", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/resource/action" + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AvailableDelegationsSubscriptionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AvailableDelegationsSubscriptionGet.json new file mode 100644 index 000000000000..e3f1ea4d5fbb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AvailableDelegationsSubscriptionGet.json @@ -0,0 +1,24 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "location": "regionName", + "subscriptionId" : "subId" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "Microsoft.Provider.resourceType", + "id": "/subscriptions/subId/providers/Microsoft.Network/availableDelegations/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availableDelegations", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/resource/action" + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AzureFirewallDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AzureFirewallDelete.json new file mode 100644 index 000000000000..879051aa8f86 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AzureFirewallDelete.json @@ -0,0 +1,13 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "azureFirewallName" : "azurefirewall" + }, + "responses" : { + "200" : { }, + "202" : { }, + "204" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AzureFirewallFqdnTagsListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AzureFirewallFqdnTagsListBySubscription.json new file mode 100644 index 000000000000..0e42982e8aa6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AzureFirewallFqdnTagsListBySubscription.json @@ -0,0 +1,28 @@ +{ + "parameters":{ + "api-version":"2018-12-01", + "subscriptionId":"subid" + }, + "responses":{ + "200":{ + "body":{ + "value":[ + { + "name":"azfwfqdntag", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewallFqdnTags/azfwfqdntag", + "type":"Microsoft.Network/azureFirewallFqdnTags", + "etag":"w/\\00000000-0000-0000-0000-000000000000\\", + "location":"West US", + "tags":{ + "key1":"value1" + }, + "properties":{ + "provisioningState":"Succeeded", + "fqdnTagName":"azfwfqdntag" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AzureFirewallGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AzureFirewallGet.json new file mode 100644 index 000000000000..aa1b836a510e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AzureFirewallGet.json @@ -0,0 +1,128 @@ +{ + "parameters":{ + "api-version": "2018-12-01", + "subscriptionId":"subid", + "resourceGroupName":"rg1", + "azureFirewallName":"azurefirewall" + }, + "responses":{ + "200":{ + "body":{ + "name":"azurefirewall", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type":"Microsoft.Network/azureFirewalls", + "etag":"w/\\00000000-0000-0000-0000-000000000000\\", + "location":"West US", + "tags":{ + "key1":"value1" + }, + "properties":{ + "provisioningState":"Succeeded", + "ipConfigurations":[ + { + "name":"azureFirewallIpConfiguration", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag":"w/\\00000000-0000-0000-0000-000000000000\\", + "properties":{ + "provisioningState":"Succeeded", + "privateIPAddress":"10.0.0.0", + "subnet":{ + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress":{ + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections":[ + { + "name":"apprulecoll", + "properties":{ + "priority":110, + "action":"Deny", + "rules":[ + { + "name":"rule1", + "description":"Deny inbound rule", + "protocols":[ + { + "protocolType":"Https", + "port":443 + } + ], + "targetFqdns":[ + "www.test.com" + ], + "sourceAddresses":[ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections":[ + { + "name":"natrulecoll", + "properties":{ + "priority":112, + "action":"Dnat", + "rules":[ + { + "name":"DNAT-HTTPS-traffic", + "description":"D-NAT all outbound web traffic for inspection", + "sourceAddresses":[ + "*" + ], + "destinationAddresses":[ + "1.2.3.4" + ], + "destinationPorts":[ + "443" + ], + "protocols":[ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + } + ] + } + } + ], + "networkRuleCollections":[ + { + "name":"netrulecoll", + "properties":{ + "priority":112, + "action":"Deny", + "rules":[ + { + "name":"L4-traffic", + "description":"Block traffic based on source IPs and ports", + "sourceAddresses":[ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts":[ + "443-444", + "8443" + ], + "destinationAddresses":[ + "*" + ], + "protocols":[ + "TCP" + ] + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AzureFirewallListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AzureFirewallListByResourceGroup.json new file mode 100644 index 000000000000..06f15d455139 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AzureFirewallListByResourceGroup.json @@ -0,0 +1,131 @@ +{ + "parameters":{ + "api-version": "2018-12-01", + "subscriptionId":"subid", + "resourceGroupName":"rg1" + }, + "responses":{ + "200":{ + "body":{ + "value":[ + { + "name":"azurefirewall", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type":"Microsoft.Network/azureFirewalls", + "etag":"w/\\00000000-0000-0000-0000-000000000000\\", + "location":"West US", + "tags":{ + "key1":"value1" + }, + "properties":{ + "provisioningState":"Succeeded", + "ipConfigurations":[ + { + "name":"azureFirewallIpConfiguration", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag":"w/\\00000000-0000-0000-0000-000000000000\\", + "properties":{ + "provisioningState":"Succeeded", + "privateIPAddress":"10.0.0.0", + "subnet":{ + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress":{ + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections":[ + { + "name":"apprulecoll", + "properties":{ + "priority":110, + "action":"Deny", + "rules":[ + { + "name":"rule1", + "description":"Deny inbound rule", + "protocols":[ + { + "protocolType":"Https", + "port":443 + } + ], + "targetFqdns":[ + "www.test.com" + ], + "sourceAddresses":[ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections":[ + { + "name":"natrulecoll", + "properties":{ + "priority":112, + "action":"Dnat", + "rules":[ + { + "name":"DNAT-HTTPS-traffic", + "description":"D-NAT all outbound web traffic for inspection", + "sourceAddresses":[ + "*" + ], + "destinationAddresses":[ + "1.2.3.4" + ], + "destinationPorts":[ + "443" + ], + "protocols":[ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + } + ] + } + } + ], + "networkRuleCollections":[ + { + "name":"netrulecoll", + "properties":{ + "priority":112, + "action":"Deny", + "rules":[ + { + "name":"L4-traffic", + "description":"Block traffic based on source IPs and ports", + "sourceAddresses":[ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts":[ + "443-444", + "8443" + ], + "destinationAddresses":[ + "*" + ], + "protocols":[ + "TCP" + ] + } + ] + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AzureFirewallListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AzureFirewallListBySubscription.json new file mode 100644 index 000000000000..fa2bdb34193c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AzureFirewallListBySubscription.json @@ -0,0 +1,130 @@ +{ + "parameters":{ + "api-version": "2018-12-01", + "subscriptionId":"subid" + }, + "responses":{ + "200":{ + "body":{ + "value":[ + { + "name":"azurefirewall", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type":"Microsoft.Network/azureFirewalls", + "etag":"w/\\00000000-0000-0000-0000-000000000000\\", + "location":"West US", + "tags":{ + "key1":"value1" + }, + "properties":{ + "provisioningState":"Succeeded", + "ipConfigurations":[ + { + "name":"azureFirewallIpConfiguration", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag":"w/\\00000000-0000-0000-0000-000000000000\\", + "properties":{ + "provisioningState":"Succeeded", + "privateIPAddress":"10.0.0.0", + "subnet":{ + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress":{ + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections":[ + { + "name":"apprulecoll", + "properties":{ + "priority":110, + "action":"Deny", + "rules":[ + { + "name":"rule1", + "description":"Deny inbound rule", + "protocols":[ + { + "protocolType":"Https", + "port":443 + } + ], + "targetFqdns":[ + "www.test.com" + ], + "sourceAddresses":[ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections":[ + { + "name":"natrulecoll", + "properties":{ + "priority":112, + "action":"Dnat", + "rules":[ + { + "name":"DNAT-HTTPS-traffic", + "description":"D-NAT all outbound web traffic for inspection", + "sourceAddresses":[ + "*" + ], + "destinationAddresses":[ + "1.2.3.4" + ], + "destinationPorts":[ + "443" + ], + "protocols":[ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + } + ] + } + } + ], + "networkRuleCollections":[ + { + "name":"netrulecoll", + "properties":{ + "priority":112, + "action":"Deny", + "rules":[ + { + "name":"L4-traffic", + "description":"Block traffic based on source IPs and ports", + "sourceAddresses":[ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts":[ + "443-444", + "8443" + ], + "destinationAddresses":[ + "*" + ], + "protocols":[ + "TCP" + ] + } + ] + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AzureFirewallPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AzureFirewallPut.json new file mode 100644 index 000000000000..4a2afcc66a28 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/AzureFirewallPut.json @@ -0,0 +1,352 @@ +{ + "parameters":{ + "api-version": "2018-12-01", + "subscriptionId":"subid", + "resourceGroupName":"rg1", + "azureFirewallName":"azurefirewall", + "parameters":{ + "tags":{ + "key1":"value1" + }, + "properties":{ + "ipConfigurations":[ + { + "name":"azureFirewallIpConfiguration", + "properties":{ + "subnet":{ + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress":{ + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections":[ + { + "name":"apprulecoll", + "properties":{ + "priority":110, + "action":"Deny", + "rules":[ + { + "name":"rule1", + "description":"Deny inbound rule", + "protocols":[ + { + "protocolType":"Https", + "port":443 + } + ], + "targetFqdns":[ + "www.test.com" + ], + "sourceAddresses":[ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections":[ + { + "name":"natrulecoll", + "properties":{ + "priority":112, + "action":"Dnat", + "rules":[ + { + "name":"DNAT-HTTPS-traffic", + "description":"D-NAT all outbound web traffic for inspection", + "sourceAddresses":[ + "*" + ], + "destinationAddresses":[ + "1.2.3.4" + ], + "destinationPorts":[ + "443" + ], + "protocols":[ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + } + ] + } + } + ], + "networkRuleCollections":[ + { + "name":"netrulecoll", + "properties":{ + "priority":112, + "action":"Deny", + "rules":[ + { + "name":"L4-traffic", + "description":"Block traffic based on source IPs and ports", + "sourceAddresses":[ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts":[ + "443-444", + "8443" + ], + "destinationAddresses":[ + "*" + ], + "protocols":[ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses":{ + "200":{ + "body":{ + "name":"azurefirewall", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type":"Microsoft.Network/azureFirewalls", + "etag":"w/\\00000000-0000-0000-0000-000000000000\\", + "location":"West US", + "tags":{ + "key1":"value1" + }, + "properties":{ + "provisioningState":"Succeeded", + "ipConfigurations":[ + { + "name":"azureFirewallIpConfiguration", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag":"w/\\00000000-0000-0000-0000-000000000000\\", + "properties":{ + "provisioningState":"Succeeded", + "privateIPAddress":"10.0.0.0", + "subnet":{ + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress":{ + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections":[ + { + "name":"apprulecoll", + "properties":{ + "priority":110, + "action":"Deny", + "rules":[ + { + "name":"rule1", + "description":"Deny inbound rule", + "protocols":[ + { + "protocolType":"Https", + "port":443 + } + ], + "targetFqdns":[ + "www.test.com" + ], + "sourceAddresses":[ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections":[ + { + "name":"natrulecoll", + "properties":{ + "priority":112, + "action":"Dnat", + "rules":[ + { + "name":"DNAT-HTTPS-traffic", + "description":"D-NAT all outbound web traffic for inspection", + "sourceAddresses":[ + "*" + ], + "destinationAddresses":[ + "1.2.3.4" + ], + "destinationPorts":[ + "443" + ], + "protocols":[ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + } + ] + } + } + ], + "networkRuleCollections":[ + { + "name":"netrulecoll", + "properties":{ + "priority":112, + "action":"Deny", + "rules":[ + { + "name":"L4-traffic", + "description":"Block traffic based on source IPs and ports", + "sourceAddresses":[ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts":[ + "443-444", + "8443" + ], + "destinationAddresses":[ + "*" + ], + "protocols":[ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "201":{ + "body":{ + "name":"azurefirewall", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type":"Microsoft.Network/azureFirewalls", + "etag":"w/\\00000000-0000-0000-0000-000000000000\\", + "location":"West US", + "tags":{ + "key1":"value1" + }, + "properties":{ + "provisioningState":"Succeeded", + "ipConfigurations":[ + { + "name":"azureFirewallIpConfiguration", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag":"w/\\00000000-0000-0000-0000-000000000000\\", + "properties":{ + "provisioningState":"Succeeded", + "privateIPAddress":"10.0.0.0", + "subnet":{ + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress":{ + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections":[ + { + "name":"apprulecoll", + "properties":{ + "priority":110, + "action":"Deny", + "rules":[ + { + "name":"rule1", + "description":"Deny inbound rule", + "protocols":[ + { + "protocolType":"Https", + "port":443 + } + ], + "targetFqdns":[ + "www.test.com" + ], + "sourceAddresses":[ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections":[ + { + "name":"natrulecoll", + "properties":{ + "priority":112, + "action":"Dnat", + "rules":[ + { + "name":"DNAT-HTTPS-traffic", + "description":"D-NAT all outbound web traffic for inspection", + "sourceAddresses":[ + "*" + ], + "destinationAddresses":[ + "1.2.3.4" + ], + "destinationPorts":[ + "443" + ], + "protocols":[ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + } + ] + } + } + ], + "networkRuleCollections":[ + { + "name":"netrulecoll", + "properties":{ + "priority":112, + "action":"Deny", + "rules":[ + { + "name":"L4-traffic", + "description":"Block traffic based on source IPs and ports", + "sourceAddresses":[ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts":[ + "443-444", + "8443" + ], + "destinationAddresses":[ + "*" + ], + "protocols":[ + "TCP" + ] + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/CheckDnsNameAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/CheckDnsNameAvailability.json new file mode 100644 index 000000000000..62eb2746c6fc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/CheckDnsNameAvailability.json @@ -0,0 +1,15 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "location" : "westus", + "domainNameLabel" : "testdns" + }, + "responses" : { + "200" : { + "body": { + "available": false + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosCustomPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosCustomPolicyCreate.json new file mode 100644 index 000000000000..a1392de9293b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosCustomPolicyCreate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "location": "westus", + "properties": { + "protocol": "Tcp" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", "triggerRateOverride": "20000" + } + ] + } + } + }, + "201": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tdp", "triggerRateOverride": "20000" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosCustomPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosCustomPolicyDelete.json new file mode 100644 index 000000000000..b54a2b821db2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosCustomPolicyDelete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "location": "westus", + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosCustomPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosCustomPolicyGet.json new file mode 100644 index 000000000000..bc8d4e63e4c7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosCustomPolicyGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy" + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosProtectionPlanCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosProtectionPlanCreate.json new file mode 100644 index 000000000000..dd36413689ea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosProtectionPlanCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan", + "parameters": { + "location": "westus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + }, + "201": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosProtectionPlanDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosProtectionPlanDelete.json new file mode 100644 index 000000000000..0f842b1c228f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosProtectionPlanDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosProtectionPlanGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosProtectionPlanGet.json new file mode 100644 index 000000000000..26a4fa5a508e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosProtectionPlanGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan" + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosProtectionPlanList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosProtectionPlanList.json new file mode 100644 index 000000000000..966276628db8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosProtectionPlanList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1", + "name": "plan1", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2", + "name": "plan2", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosProtectionPlanListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosProtectionPlanListAll.json new file mode 100644 index 000000000000..db0059828a3e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DdosProtectionPlanListAll.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1", + "name": "plan1", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet1" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2", + "name": "plan2", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet3" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DefaultSecurityRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DefaultSecurityRuleGet.json new file mode 100644 index 000000000000..367978d0687b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DefaultSecurityRuleGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "networkSecurityGroupName": "nsg1", + "defaultSecurityRuleName": "AllowVnetInBound" + }, + "responses": { + "200": { + "body": { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DefaultSecurityRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DefaultSecurityRuleList.json new file mode 100644 index 000000000000..f84a12d4f472 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/DefaultSecurityRuleList.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "networkSecurityGroupName": "nsg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/EndpointServicesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/EndpointServicesList.json new file mode 100644 index 000000000000..810497fa9e0f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/EndpointServicesList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Storage", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.Storage", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + }, + { + "name": "Microsoft.Sql", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.Sql", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + }, + { + "name": "Microsoft.AzureActiveDirectory", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.AzureActiveDirectory", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitARPTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitARPTableList.json new file mode 100644 index 000000000000..ed91df72b5c8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitARPTableList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "value": [ + { + "age": 0, + "interface": "Microsoft", + "ipAddress": "IPAddress", + "macAddress": "macAddress" + } + ] + }, + "202": { + "value": [ + { + "age": 0, + "interface": "Microsoft", + "ipAddress": "IPAddress", + "macAddress": "macAddress" + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitAuthorizationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitAuthorizationCreate.json new file mode 100644 index 000000000000..560ba85516e2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitAuthorizationCreate.json @@ -0,0 +1,39 @@ +{ + "parameters":{ + "circuitName":"circuitName", + "resourceGroupName":"rg1", + "authorizationName":"authorizatinName", + "api-version": "2018-12-01", + "subscriptionId":"subid", + "authorizationParameters":{ + "properties": { + "authorizationKey": "authKey", + "authorizationUseStatus":"Available" + } + } + }, + "responses":{ + "201":{ + "body":{ + "name":"authorizationName", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag":"W/\"e22dd4b2-4c24-44cf-b702-70a472b62914\"", + "properties":{ + "provisioningState":"Updating", + "authorizationUseStatus":"Available" + } + } + }, + "200":{ + "body":{ + "name":"authorizationName", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/authorizations/authorizationName", + "etag":"W/\"e22dd4b2-4c24-44cf-b702-70a472b62914\"", + "properties":{ + "provisioningState":"Updating", + "authorizationUseStatus":"Available" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitAuthorizationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitAuthorizationDelete.json new file mode 100644 index 000000000000..9f6b013e9b94 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitAuthorizationDelete.json @@ -0,0 +1,20 @@ +{ + "parameters":{ + "circuitName":"circuitName", + "resourceGroupName":"rg1", + "api-version": "2018-12-01", + "subscriptionId":"subid", + "authorizationName":"authorizationName" + }, + "responses":{ + "200":{ + + }, + "202":{ + + }, + "204":{ + + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitAuthorizationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitAuthorizationGet.json new file mode 100644 index 000000000000..00bc1ef4afef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitAuthorizationGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "authorizationName": "authorizationName" + }, + "responses": { + "200": { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authKey", + "authorizationUseStatus": "Available" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitAuthorizationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitAuthorizationList.json new file mode 100644 index 000000000000..313f7992a3cd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitAuthorizationList.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "value": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authKey", + "authorizationUseStatus": "Available" + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitConnectionCreate.json new file mode 100644 index 000000000000..8a29b1f3cb0e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitConnectionCreate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering", + "type": "Microsoft.Network/expressRouteCircuits/peerings/connections", + "expressRouteCircuitConnectionParameters": { + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/29" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState":"Succeeded" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState":"Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitConnectionDelete.json new file mode 100644 index 000000000000..ee216eab7519 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitConnectionDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering", + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitConnectionGet.json new file mode 100644 index 000000000000..1169094fd2e6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitConnectionGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState":"Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..2946b967082e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitConnectionList.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState":"Succeeded" + } + }, + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSEUR", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSEUR", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharckteurope/providers/Microsoft.Network/expressRouteCircuits/dedharcktams/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState":"Succeeded" + } + } + ] + } + } + } + } \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitCreate.json new file mode 100644 index 000000000000..dbbcb75bce83 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitCreate.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "parameters": { + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + }, + "properties": { + "authorizations": [], + "peerings": [], + "allowClassicOperations": false, + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + } + }, + "location": "West US" + } + }, + "responses": { + "201": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + }, + "200": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json new file mode 100644 index 000000000000..e4aa8a0a91c1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2018-12-01", + "resourceGroupName": "rg1", + "type": "Microsoft.Network/expressRouteCircuits", + "circuitName": "expressRouteCircuit1", + "parameters": { + "location": "westus", + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + }, + "properties": { + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps":10 + } + } + }, + "responses": { + "200": { + "body": { + "name": "expressRouteCircuit1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuit1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps":10, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "20", + "serviceKey": "d281f746-ee01-4d00-8b0a-edec4833772b", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + } + } + }, + "201": { + "body": { + "name": "expressRouteCircuit1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuit1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps":10, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "20", + "serviceKey": "d281f746-ee01-4d00-8b0a-edec4833772b", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitDelete.json new file mode 100644 index 000000000000..e98c93f1fdc1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitGet.json new file mode 100644 index 000000000000..188e317482c8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitListByResourceGroup.json new file mode 100644 index 000000000000..9e371ac896ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitListByResourceGroup.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "value": [ + { + "name": "circuitName1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "262effd3-248d-4754-9068-0a89260dd918", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "113", + "serviceKey": "a1410692-ed3b-4ceb-b94a-b90b95d398d1", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + }, + { + "name": "circuitName2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "47853fd2-9261-4670-b7c3-2debcf9b88da", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2/authorizations/MyAuthorization2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "6569625a-9ba4-498b-9719-14d778eef609", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitListBySubscription.json new file mode 100644 index 000000000000..a6e60a4436ed --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitListBySubscription.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "value": [ + { + "name": "circuitName1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "262effd3-248d-4754-9068-0a89260dd918", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "113", + "serviceKey": "a1410692-ed3b-4ceb-b94a-b90b95d398d1", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + }, + { + "name": "circuitName2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "47853fd2-9261-4670-b7c3-2debcf9b88da", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2/authorizations/MyAuthorization2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "6569625a-9ba4-498b-9719-14d778eef609", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitPeeringCreate.json new file mode 100644 index 000000000000..53715376e5c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitPeeringCreate.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "peeringParameters": { + "properties": { + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "vlanId": 200, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName" + } + } + } + }, + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitPeeringDelete.json new file mode 100644 index 000000000000..9292fa97ca6d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "peeringName": "peeringName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitPeeringGet.json new file mode 100644 index 000000000000..383f2ef6747d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitPeeringGet.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "peeringName": "MicrosoftPeering" + }, + "responses": { + "200": { + "name": "MicrosoftPeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/MicrosoftPeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "MicrosoftPeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "123.0.0.0/30", + "secondaryPeerAddressPrefix": "123.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 300, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "123.1.0.0/24" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + }, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "3FFE:FFFF:0:CD31::/120" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitPeeringList.json new file mode 100644 index 000000000000..24b5e7393b92 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitPeeringList.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "value": [ + { + "name": "MicrosoftPeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/MicrosoftPeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "MicrosoftPeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "123.0.0.0/30", + "secondaryPeerAddressPrefix": "123.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 300, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "123.1.0.0/24" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + }, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "3FFE:FFFF:0:CD31::/120" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + } + }, + "expressRouteConnection": "" + } + }, + { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "10.0.0.0/30", + "secondaryPeerAddressPrefix": "10.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName" + } + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitPeeringStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitPeeringStats.json new file mode 100644 index 000000000000..396e867dd1ae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitPeeringStats.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "peeringName": "peeringName" + }, + "responses": { + "200": { + "primaryBytesIn": 537408, + "primaryBytesOut": 44032550, + "secondaryBytesIn": 0, + "secondaryBytesOut": 39002500 + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitRouteTableList.json new file mode 100644 index 000000000000..6a537d42a261 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitRouteTableList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "value": [ + { + "network": "", + "nextHop": "", + "locPrf": "", + "weight": 0, + "path": "" + } + ] + }, + "202": { + "value": [ + { + "network": "", + "nextHop": "", + "locPrf": "", + "weight": 0, + "path": "" + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitRouteTableSummaryList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitRouteTableSummaryList.json new file mode 100644 index 000000000000..d30802679bac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitRouteTableSummaryList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "value": [ + { + "neighbor": "100.65.171.1", + "v": 4, + "as": 9583, + "upDown": "never", + "statePfxRcd": "Idle" + } + ] + }, + "202": { + "value": [ + { + "neighbor": "100.65.171.1", + "v": 4, + "as": 9583, + "upDown": "never", + "statePfxRcd": "Idle" + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitStats.json new file mode 100644 index 000000000000..5e4a8dfc373b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitStats.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "primaryBytesIn": 537408, + "primaryBytesOut": 44032550, + "secondaryBytesIn": 0, + "secondaryBytesOut": 39002500 + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitUpdateTags.json new file mode 100644 index 000000000000..88a5a7078ede --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCircuitUpdateTags.json @@ -0,0 +1,48 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "ertest", + "circuitName" : "er1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "er1", + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Failed", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 1000 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "0b392c2e-1e9d-46d7-b5e0-9ce90ca6b60c", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteConnectionCreate.json new file mode 100644 index 000000000000..51d74b13ddb8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteConnectionCreate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "connectionName": "connectionName", + "putExpressRouteConnectionParameters": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "name": "connectionName", + "properties": { + "routingWeight": 2, + "authorizationKey": "authorizationKey", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 2 + } + } + }, + "201": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 2 + } + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteConnectionDelete.json new file mode 100644 index 000000000000..d63d65e2407b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "connectionName": "connectionName", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } + } \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteConnectionGet.json new file mode 100644 index 000000000000..2e6528f39d42 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteConnectionGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "connectionName": "connectionName" + }, + "responses": { + "200": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 1 + } + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteConnectionList.json new file mode 100644 index 000000000000..845c61a8384e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteConnectionList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "resourceGroupName": "resourceGroupName", + "expressRouteGatewayName": "expressRouteGatewayName", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 1 + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json new file mode 100644 index 000000000000..621efbdb2968 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "peeringParameters": { + "properties": { + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "vlanId": 200, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + }, + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-Boydton1DC/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json new file mode 100644 index 000000000000..084b20839e48 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + }, + "202": { + }, + "204": { + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json new file mode 100644 index 000000000000..359c1d48a758 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-Boydton1DC/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json new file mode 100644 index 000000000000..20f33bf063c0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionGet.json new file mode 100644 index 000000000000..96ac9f8fd9b9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "CrossConnection-SiliconValley", + "crossConnectionName" : "" + }, + "responses" : { + "200" : { + "body" : { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "etag": "W/\"c0e6477e-8150-4d4f-9bf6-bb10e6acb63a\"", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionList.json new file mode 100644 index 000000000000..0173a6b63e04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json new file mode 100644 index 000000000000..98a6177d8966 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "resourceGroupName": "CrossConnection-SiliconValley", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSilicon-Valley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionUpdate.json new file mode 100644 index 000000000000..6b83af829c5c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "CrossConnection-SiliconValley", + "crossConnectionName" : "", + "parameters": { + "properties": { + "serviceProviderProvisioningState": "NotProvisioned" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionUpdateTags.json new file mode 100644 index 000000000000..3d918b91f069 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionUpdateTags.json @@ -0,0 +1,41 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "CrossConnection-SiliconValley", + "crossConnectionName" : "", + "crossConnectionParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "er1", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Failed", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionsArpTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionsArpTable.json new file mode 100644 index 000000000000..3098ecee1594 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionsArpTable.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "age": 0, + "interface": "Microsoft" , + "ipAddress": "192.116.14.254", + "macAddress": "885a.9269.9110" + } + ] + } + }, + "202": { + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionsRouteTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionsRouteTable.json new file mode 100644 index 000000000000..55df363b2a30 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionsRouteTable.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "network": "10.6.0.0/16", + "nextHop": "10.6.1.12" , + "locPrf": "", + "weight": 0, + "path": "65514" + }, + { + "network": "10.7.0.0/16", + "nextHop": "10.7.1.13" , + "locPrf": "", + "weight": 0, + "path": "65514" + } + ] + } + }, + "202": { + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json new file mode 100644 index 000000000000..cb024cde661d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "neighbor": "10.6.1.112", + "asn": 65514, + "upDown": "1d14h", + "stateOrPrefixesReceived": "Active" + }, + { + "neighbor": "10.6.1.113", + "asn": 65514, + "upDown": "1d14h", + "stateOrPrefixesReceived": "1" + } + ] + } + }, + "202": { + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteGatewayCreate.json new file mode 100644 index 000000000000..7a0651b0d0b8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteGatewayCreate.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "expressRouteGatewayName": "gateway-2", + "subscriptionId": "subid", + "resourceGroupName": "resourceGroupName", + "api-version": "2018-12-01", + "putExpressRouteGatewayParameters": { + "name": "gateway-2", + "type": "Microsoft.Network/expressRouteGateways", + "location": "westus", + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupId/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "gateway-2", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + }, + "200": { + "body": { + "name": "gateway-2", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteGatewayDelete.json new file mode 100644 index 000000000000..c3403684f8f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteGatewayGet.json new file mode 100644 index 000000000000..3ef81b929ab1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteGatewayGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + } + } + } + }, + "404": {} + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteGatewayListByResourceGroup.json new file mode 100644 index 000000000000..d34bdb195416 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteGatewayListByResourceGroup.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "resourceGroupName": "resourceGroupName", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 2 + } + }, + "expressRouteConnections": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "f28e9c99-78d8-4248-a855-c54cf6beb99d", + "routingWeight": 1 + } + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteGatewayListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteGatewayListBySubscription.json new file mode 100644 index 000000000000..ae4462ebb48e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteGatewayListBySubscription.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 2 + } + }, + "expressRouteConnections": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "f28e9c99-78d8-4248-a855-c54cf6beb99d", + "routingWeight": 1 + } + } + ] + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteLinkGet.json new file mode 100644 index 000000000000..54eefacb569f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteLinkGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2018-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "linkName": "linkName" + }, + "responses": { + "200": { + "body": { + "name": "linkName", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName/links/linkName", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteLinkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteLinkList.json new file mode 100644 index 000000000000..775188ea311e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteLinkList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2018-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "link1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName/links/link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "name": "link2", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName/links/link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortCreate.json new file mode 100644 index 000000000000..b1ae80b51907 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortCreate.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2018-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "location": "westus", + "properties": { + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "encapsulation": "QinQ" + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName", + "type": "Microsofot.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + }, + "201": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName", + "type": "Microsofot.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortDelete.json new file mode 100644 index 000000000000..51ccee484a56 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2018-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortGet.json new file mode 100644 index 000000000000..8b1b79a384dd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2018-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName", + "type": "Microsofot.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortList.json new file mode 100644 index 000000000000..a3ddeb36dfd8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortList.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2018-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName", + "type": "Microsofot.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortListByResourceGroup.json new file mode 100644 index 000000000000..6a128d950a9e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortListByResourceGroup.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2018-12-01", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName", + "type": "Microsofot.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortUpdateLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortUpdateLink.json new file mode 100644 index 000000000000..e9192c69460e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortUpdateLink.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2018-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "location": "westus", + "properties": { + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "encapsulation": "QinQ", + "links": [ + { + "name":"link1", + "properties": { + "adminState": "Enabled" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName", + "type": "Microsofot.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + }, + "201": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName", + "type": "Microsofot.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortUpdateTags.json new file mode 100644 index 000000000000..ededeeee1ea7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortUpdateTags.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2018-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName", + "type": "Microsofot.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortsLocationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortsLocationGet.json new file mode 100644 index 000000000000..b6ee991b4893 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortsLocationGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2018-12-01", + "locationName": "locationName" + }, + "responses": { + "200": { + "body": { + "name": "locationName", + "id": "/subscriptions/subid/providers/Microsofot.Network/expressRoutePortsLocations/locationName", + "type": "Microsofot.Network/expressRoutePortsLocations", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "address": "123 Main Street, City, State, Zip", + "contact": "email@address.com", + "availableBandwidths": [ + { + "offerName": "100 Gbps", + "valueInGbps": 100 + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortsLocationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortsLocationList.json new file mode 100644 index 000000000000..42ebb4566ed4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRoutePortsLocationList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2018-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "locationName", + "id": "/subscriptions/subid/providers/Microsofot.Network/expressRoutePortsLocations/locationName", + "type": "Microsofot.Network/expressRoutePortsLocations", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "address": "123 Main Street, City, State, Zip", + "contact": "email@address.com", + "availableBandwidths": [ + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteProviderList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteProviderList.json new file mode 100644 index 000000000000..6236fd40ae10 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ExpressRouteProviderList.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "value": [ + { + "name": "providerName", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/expressRouteServiceProviders/", + "type": "Microsoft.Network/expressRouteServiceProviders", + "properties": { + "provisioningState": "Succeeded", + "peeringLocations": [ + "peeringLocation1", + "peeringLocation2" + ], + "bandwidthsOffered": [ + { + "offerName": "50Mbps", + "valueInMbps": 50 + }, + { + "offerName": "100Mbps", + "valueInMbps": 100 + }, + { + "offerName": "200Mbps", + "valueInMbps": 200 + }, + { + "offerName": "500Mbps", + "valueInMbps": 500 + }, + { + "offerName": "1Gbps", + "valueInMbps": 1000 + }, + { + "offerName": "2Gbps", + "valueInMbps": 2000 + }, + { + "offerName": "5Gbps", + "valueInMbps": 5000 + }, + { + "offerName": "10Gbps", + "valueInMbps": 10000 + } + ] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/HubVirtualNetworkConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/HubVirtualNetworkConnectionDelete.json new file mode 100644 index 000000000000..b17864d95644 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/HubVirtualNetworkConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { }, + "202": { }, + "204": { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/HubVirtualNetworkConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/HubVirtualNetworkConnectionGet.json new file mode 100644 index 000000000000..2032a9b6c100 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/HubVirtualNetworkConnectionGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/virtualNetworks/vnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/HubVirtualNetworkConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/HubVirtualNetworkConnectionList.json new file mode 100644 index 000000000000..065c73926bc9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/HubVirtualNetworkConnectionList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/virtualNetworks/vnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + }, + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/virtualNetworks/vnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/HubVirtualNetworkConnectionPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/HubVirtualNetworkConnectionPut.json new file mode 100644 index 000000000000..82bcc0452df3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/HubVirtualNetworkConnectionPut.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "hubVirtualNetworkConnectionParameters": { + "properties": { + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + }, + "responses": { + "200": { + "body": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/virtualNetworks/vnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ] + }, + "201": { + "body": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/virtualNetworks/vnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InboundNatRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InboundNatRuleCreate.json new file mode 100644 index 000000000000..2bd0abaf1832 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InboundNatRuleCreate.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1", + "inboundNatRuleParameters": { + "properties": { + "protocol": "Tcp", + "frontendIPConfiguration": { "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1"}, + "frontendPort": 3390, + "backendPort": 3389, + "idleTimeoutInMinutes": 4, + "enableTcpReset": true, + "enableFloatingIP": false + } + } + }, + "responses": { + "200": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + }, + "201": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InboundNatRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InboundNatRuleDelete.json new file mode 100644 index 000000000000..09dad1832488 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InboundNatRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1" + }, + "responses": { + "200": { }, + "202": { }, + "204": { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InboundNatRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InboundNatRuleGet.json new file mode 100644 index 000000000000..2374f29e0568 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InboundNatRuleGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1" + }, + "responses": { + "200": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InboundNatRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InboundNatRuleList.json new file mode 100644 index 000000000000..83dca711d387 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InboundNatRuleList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + }, + { + "name": "natRule1.3", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.3", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3392, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InterfaceEndpointCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InterfaceEndpointCreate.json new file mode 100644 index 000000000000..8373bf62a86d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InterfaceEndpointCreate.json @@ -0,0 +1,67 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subId", + "resourceGroupName": "rg1", + "interfaceEndpointName": "testIe", + "parameters": { + "properties": { + "fqdn": "uniqueIdentifier.fqdn.windows.net", + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "endpointService": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Provider/resourceType/resourceName" + } + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "testIe", + "id" : "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/interfaceEndpoints/testIe", + "location" : "eastus", + "properties" : { + "fqdn": "uniqueIdentifier.fqdn.windows.net", + "provisioningState": "Succeded", + "owner": "User", + "endpointService": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Provider/resourceType/resourceName" + }, + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testIe.nic.abcd1234" + } + ] + } + } + }, + "201" : { + "body" : { + "name" : "testIe", + "id" : "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/interfaceEndpoints/testIe", + "location" : "eastus", + "properties" : { + "provisioningState" : "Succeeded", + "fqdn": "uniqueIdentifier.fqdn.windows.net", + "owner": "User", + "endpointService": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Provider/resourceType/resourceName" + }, + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testIe.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InterfaceEndpointDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InterfaceEndpointDelete.json new file mode 100644 index 000000000000..b8b517c65709 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InterfaceEndpointDelete.json @@ -0,0 +1,13 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subId", + "resourceGroupName": "rg1", + "interfaceEndpointName": "testIe" + }, + "responses" : { + "200" : { }, + "202" : { }, + "204" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InterfaceEndpointGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InterfaceEndpointGet.json new file mode 100644 index 000000000000..0b80664f2244 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InterfaceEndpointGet.json @@ -0,0 +1,34 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subId", + "resourceGroupName" : "rg1", + "interfaceEndpointName" : "testIe" + }, + "responses" : { + "200" : { + "body" : { + "name" : "testIe", + "id" : "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/interfaceEndpoints/testIe", + "type" : "Microsoft.Network/interfaceEndpoints", + "location" : "eastus", + "properties" : { + "provisioningState" : "Succeeded", + "fqdn": "uniqueIdentifier.fqdn.windows.net", + "owner": "User", + "endpointService": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Provider/resourceType/resourceName" + }, + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testIe.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InterfaceEndpointList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InterfaceEndpointList.json new file mode 100644 index 000000000000..53cdd89f1ad8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InterfaceEndpointList.json @@ -0,0 +1,59 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subId", + "resourceGroupName" : "rg1" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/interfaceEndpoints/ie1", + "name": "ie1", + "type": "Microsoft.Network/interfaceEndpoints", + "location": "eastus", + "properties" : { + "provisioningState" : "Succeeded", + "fqdn": "uniqueIdentifier.fqdn.windows.net", + "owner": "User", + "endpointService": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Provider/resourceType/resourceName" + }, + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/ie1.nic.abcd1234" + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/interfaceEndpoints/ie2", + "name": "ie2", + "type": "Microsoft.Network/interfaceEndpoints", + "location": "eastus", + "properties" : { + "provisioningState" : "Succeeded", + "fqdn": "alsoUnique.fqdn.windows.net", + "owner": "User", + "endpointService": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Provider/resourceType/otherResourceName" + }, + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/ie2.nic.zyxw9876" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InterfaceEndpointListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InterfaceEndpointListAll.json new file mode 100644 index 000000000000..533815f5e3f6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/InterfaceEndpointListAll.json @@ -0,0 +1,80 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subId" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/interfaceEndpoints/ie1", + "name": "ie1", + "type": "Microsoft.Network/interfaceEndpoints", + "location": "eastus", + "properties" : { + "provisioningState" : "Succeeded", + "fqdn": "uniqueIdentifier.fqdn.windows.net", + "owner": "User", + "endpointService": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Provider/resourceType/resourceName" + }, + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/ie1.nic.abcd1234" + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/interfaceEndpoints/ie2", + "name": "ie2", + "type": "Microsoft.Network/interfaceEndpoints", + "location": "eastus", + "properties" : { + "provisioningState" : "Succeeded", + "fqdn": "alsoUnique.fqdn.windows.net", + "owner": "User", + "endpointService": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Provider/resourceType/otherResourceName" + }, + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/ie2.nic.zyxw9876" + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/interfaceEndpoints/ie1", + "name": "ie1", + "type": "Microsoft.Network/interfaceEndpoints", + "location": "eastus", + "properties" : { + "provisioningState" : "Succeeded", + "fqdn": "stillVeryUnique.fqdn.windows.net", + "owner": "User", + "endpointService": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Provider/resourceType/resourceName" + }, + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg2/provders/Microsoft.Network/networkInterfaces/ie1.nic.efgh5463" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerBackendAddressPoolGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerBackendAddressPoolGet.json new file mode 100644 index 000000000000..443e15c38ded --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerBackendAddressPoolGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2018-12-01" + }, + "responses": { + "200": { + "body": { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerBackendAddressPoolList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerBackendAddressPoolList.json new file mode 100644 index 000000000000..a517e6a54745 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerBackendAddressPoolList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2018-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreate.json new file mode 100644 index 000000000000..9f8f70d01120 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreate.json @@ -0,0 +1,338 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "loadBalancerName" : "lb", + "parameters": { + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": { + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201" : { + "body" : { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateStandardSku.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateStandardSku.json new file mode 100644 index 000000000000..c717e5f47684 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateStandardSku.json @@ -0,0 +1,335 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "loadBalancerName" : "lb", + "parameters": { + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": { + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201" : { + "body" : { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateWithInboundNatPool.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateWithInboundNatPool.json new file mode 100644 index 000000000000..9a9fc73db0d2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateWithInboundNatPool.json @@ -0,0 +1,168 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "loadBalancerName" : "lb", + "parameters": { + "properties": { + "frontendIPConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "properties": { + "serviceEndpoints": [], + "resourceNavigationLinks": [] + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + } + }, + "name": "test", + "zones": [], + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "inboundNatPools": [ + { + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + }, + "protocol": "Tcp", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "enableTcpReset": true + }, + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ], + "outboundRules": [] + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + }, + "inboundNatPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test", + "properties": { + "provisioningState": "Succeeded", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "protocol": "Tcp", + "enableTcpReset": true, + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + } + } + ] + } + } + }, + "201" : { + "body" : { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + }, + "inboundNatPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test", + "properties": { + "provisioningState": "Succeeded", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "protocol": "Tcp", + "enableTcpReset": true, + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateWithZones.json new file mode 100644 index 000000000000..440707da75e2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerCreateWithZones.json @@ -0,0 +1,335 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "loadBalancerName" : "lb", + "parameters": { + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + }, + "zones": [ "1" ] + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": { + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "zones": [ "1" ], + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201" : { + "body" : { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "zones": [ "1" ], + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerDelete.json new file mode 100644 index 000000000000..dad774f8984a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerDelete.json @@ -0,0 +1,13 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "loadBalancerName" : "lb" + }, + "responses" : { + "200" : { }, + "202" : { }, + "204" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerFrontendIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerFrontendIPConfigurationGet.json new file mode 100644 index 000000000000..a187b745b0db --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerFrontendIPConfigurationGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "frontendIPConfigurationName": "frontend", + "api-version": "2018-12-01" + }, + "responses": { + "200": { + "body": { + "name": "frontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerFrontendIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerFrontendIPConfigurationList.json new file mode 100644 index 000000000000..c9699f083a29 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerFrontendIPConfigurationList.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "loadBalancerName": "lb" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "frontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerGet.json new file mode 100644 index 000000000000..1398592bfc88 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerGet.json @@ -0,0 +1,127 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "loadBalancerName" : "lb" + }, + "responses" : { + "200" : { + "body" : { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerList.json new file mode 100644 index 000000000000..3e2e5c82162b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerList.json @@ -0,0 +1,142 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "felb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "belb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration":{ + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb" + } + } + } + ], + "probes": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inrlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + }, + { + "name": "lb2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb2", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerListAll.json new file mode 100644 index 000000000000..32af2a569163 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerListAll.json @@ -0,0 +1,141 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "felb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "belb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration":{ + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb" + } + } + } + ], + "probes": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inrlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + }, + { + "name": "lb3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/lb3", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerLoadBalancingRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerLoadBalancingRuleGet.json new file mode 100644 index 000000000000..ddc4c5d81633 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerLoadBalancingRuleGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "loadBalancingRuleName": "rule1", + "api-version": "2018-12-01" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerLoadBalancingRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerLoadBalancingRuleList.json new file mode 100644 index 000000000000..e5438f929cc1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerLoadBalancingRuleList.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2018-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerNetworkInterfaceListSimple.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerNetworkInterfaceListSimple.json new file mode 100644 index 000000000000..27136b932464 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerNetworkInterfaceListSimple.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2018-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mynic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/frontendSubnet" + }, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inbound1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": false, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerNetworkInterfaceListVmss.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerNetworkInterfaceListVmss.json new file mode 100644 index 000000000000..46488ccfe6d8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerNetworkInterfaceListVmss.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2018-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vmss1Nic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "vmss1IpConfig", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.0" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0" + } + } + }, + { + "name": "vmss1Nic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "vmss1IpConfig", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool" + } + ], + "loadBalancerInboundNatRules":[ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerOutboundRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerOutboundRuleGet.json new file mode 100644 index 000000000000..74a0efc8a7ec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerOutboundRuleGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "outboundRuleName": "rule1", + "api-version": "2018-12-01" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/outboundRules/rule1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + } + ], + "allocatedOutboundPorts": 64, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerOutboundRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerOutboundRuleList.json new file mode 100644 index 000000000000..c41a4ba1ecef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerOutboundRuleList.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2018-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/outboundRules/rule1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + } + ], + "allocatedOutboundPorts": 64, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerProbeGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerProbeGet.json new file mode 100644 index 000000000000..e75ee6300802 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerProbeGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "probeName": "probe1", + "api-version": "2018-12-01" + }, + "responses": { + "200": { + "body": { + "name": "probe1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/probe1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerProbeList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerProbeList.json new file mode 100644 index 000000000000..5ea72c24c1dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerProbeList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2018-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerUpdateTags.json new file mode 100644 index 000000000000..ea99ee70e63b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LoadBalancerUpdateTags.json @@ -0,0 +1,132 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "loadBalancerName" : "lb", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LocalNetworkGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LocalNetworkGatewayCreate.json new file mode 100644 index 000000000000..6c7a0514ecc6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LocalNetworkGatewayCreate.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName" : "localgw", + "parameters": { + "properties": { + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + }, + "location": "Central US" + } + }, + "responses" : { + "201" : { + "body" : { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + }, + "200" : { + "body" : { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LocalNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LocalNetworkGatewayDelete.json new file mode 100644 index 000000000000..83564a13e6e7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LocalNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName" : "localgw" + }, + "responses" : { + "202" : { }, + "200" : { }, + "204" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LocalNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LocalNetworkGatewayGet.json new file mode 100644 index 000000000000..3ba11f80833c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LocalNetworkGatewayGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName" : "localgw" + }, + "responses" : { + "200" : { + "body" : { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LocalNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LocalNetworkGatewayList.json new file mode 100644 index 000000000000..fcf38bbf530d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LocalNetworkGatewayList.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "localgw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + }, + { + "name": "localgw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.2.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LocalNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LocalNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..c6ed7c0ad2ad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/LocalNetworkGatewayUpdateTags.json @@ -0,0 +1,38 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "localNetworkGatewayName": "lgw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "lgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw", + "type": "Microsoft.Network/localNetworkGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "gatewayIpAddress": "12.0.0.1" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceCreate.json new file mode 100644 index 000000000000..c9dc6db755a9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceCreate.json @@ -0,0 +1,98 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic", + "parameters": { + "properties": { + "enableAcceleratedNetworking": true, + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "publicIPAddress": { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + } + } + } + ] + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "test-nic", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location" : "eastus", + "properties" : { + "provisioningState" : "Succeeded", + "ipConfigurations" : [{ + "name" : "ipconfig1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties" : { + "provisioningState" : "Succeeded", + "privateIPAddress" : "172.20.2.4", + "privateIPAllocationMethod" : "Dynamic", + "publicIPAddress" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary" : true, + "privateIPAddressVersion" : "IPv4" + } + } + ], + "dnsSettings" : { + "dnsServers" : [], + "appliedDnsServers" : [] + }, + "enableAcceleratedNetworking" : true, + "enableIPForwarding" : false + }, + "type" : "Microsoft.Network/networkInterfaces" + } + }, + "201" : { + "body" : { + "name" : "test-nic", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location" : "eastus", + "properties" : { + "provisioningState" : "Succeeded", + "ipConfigurations" : [{ + "name" : "ipconfig1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties" : { + "provisioningState" : "Succeeded", + "privateIPAddress" : "172.20.2.4", + "privateIPAllocationMethod" : "Dynamic", + "publicIPAddress" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary" : true, + "privateIPAddressVersion" : "IPv4" + } + } + ], + "dnsSettings" : { + "dnsServers" : [], + "appliedDnsServers" : [] + }, + "enableAcceleratedNetworking" : true, + "enableIPForwarding" : false + }, + "type" : "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceDelete.json new file mode 100644 index 000000000000..efc87645f95f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic" + }, + "responses" : { + "200" : { }, + "202" : { }, + "204" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceEffectiveNSGList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceEffectiveNSGList.json new file mode 100644 index 000000000000..ee86db2f96dd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceEffectiveNSGList.json @@ -0,0 +1,71 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1" + }, + "responses" : { + "200" : { + "body" : { + "value" : [ + { + "networkSecurityGroup" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/test-nsg" + }, + "association" : { + "subnet" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "networkInterface" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1" + } + }, + "effectiveSecurityRules" : [ + { + "name" : "securityRules/rule1", + "protocol" : "Tcp", + "sourcePortRange" : "456-456", + "destinationPortRange" : "6579-6579", + "sourceAddressPrefix" : "0.0.0.0/32", + "destinationAddressPrefix" : "0.0.0.0/32", + "access" : "Allow", + "priority" : 234, + "direction" : "Inbound" + }, + { + "name" : "securityRules/default-allow-rdp", + "protocol" : "Tcp", + "sourcePortRange" : "0-65535", + "destinationPortRange" : "3389-3389", + "sourceAddressPrefix" : "1.1.1.1/32", + "destinationAddressPrefix" : "0.0.0.0/0", + "access" : "Allow", + "priority" : 1000, + "direction" : "Inbound" + }, + { + "name" : "defaultSecurityRules/AllowInternetOutBound", + "protocol" : "All", + "sourcePortRange" : "0-65535", + "destinationPortRange" : "0-65535", + "sourceAddressPrefix" : "0.0.0.0/0", + "destinationAddressPrefix" : "Internet", + "expandedDestinationAddressPrefix" : [ + "32.0.0.0/3", + "4.0.0.0/6", + "2.0.0.0/7", + "1.0.0.0/8" + ], + "access" : "Allow", + "priority" : 65001, + "direction" : "Outbound" + } + ] + } + ] + } + }, + "202" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceEffectiveRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceEffectiveRouteTableList.json new file mode 100644 index 000000000000..5819507ff0d6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceEffectiveRouteTableList.json @@ -0,0 +1,71 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "172.20.2.0/24" + ], + "nextHopType": "VnetLocal", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "0.0.0.0/0" + ], + "nextHopType": "Internet", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "10.0.0.0/8" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "100.64.0.0/10" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "172.16.0.0/12" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "192.168.0.0/16" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + } + ] + } + }, + "202" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceGet.json new file mode 100644 index 000000000000..84d0eb3fd2f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceGet.json @@ -0,0 +1,55 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic" + }, + "responses" : { + "200" : { + "body" : { + "name" : "test-nic", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location" : "eastus", + "properties" : { + "provisioningState" : "Succeeded", + "ipConfigurations" : [ + { + "name" : "ipconfig1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties" : { + "provisioningState" : "Succeeded", + "privateIPAddress" : "172.20.2.4", + "privateIPAllocationMethod" : "Dynamic", + "publicIPAddress" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary" : true, + "privateIPAddressVersion" : "IPv4" + } + } + ], + "dnsSettings" : { + "dnsServers" : [], + "appliedDnsServers" : [], + "internalDomainNameSuffix" : "test.bx.internal.cloudapp.net" + }, + "macAddress" : "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking" : true, + "enableIPForwarding" : false, + "networkSecurityGroup" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary" : true, + "virtualMachine" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type" : "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceIPConfigurationGet.json new file mode 100644 index 000000000000..075fbd6d642c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceIPConfigurationGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "ipConfigurationName": "ipconfig1", + "api-version": "2018-12-01" + }, + "responses": { + "200": { + "body": { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/frontendSubnet" + }, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1" + } + ], + "virtualNetworkTaps": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/vTAP1" + }, + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/vTAP2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceIPConfigurationList.json new file mode 100644 index 000000000000..8a39cad2288f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceIPConfigurationList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2018-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet12/subnets/subnet12" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceList.json new file mode 100644 index 000000000000..416683f0e4ff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceList.json @@ -0,0 +1,90 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name" : "test-nic", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location" : "eastus", + "properties" : { + "provisioningState" : "Succeeded", + "ipConfigurations" : [{ + "name" : "ipconfig1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties" : { + "provisioningState" : "Succeeded", + "privateIPAddress" : "172.20.2.4", + "privateIPAllocationMethod" : "Dynamic", + "publicIPAddress" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary" : true, + "privateIPAddressVersion" : "IPv4" + } + } + ], + "dnsSettings" : { + "dnsServers" : [], + "appliedDnsServers" : [], + "internalDomainNameSuffix" : "test.bx.internal.cloudapp.net" + }, + "macAddress" : "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking" : true, + "enableIPForwarding" : false, + "networkSecurityGroup" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary" : true, + "virtualMachine" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type" : "Microsoft.Network/networkInterfaces" + }, + { + "name" : "test-nic2", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2", + "location" : "eastus", + "properties" : { + "provisioningState" : "Succeeded", + "ipConfigurations" : [{ + "name" : "ipconfig1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2/ipConfigurations/ipconfig1", + "properties" : { + "provisioningState" : "Succeeded", + "privateIPAddress" : "172.20.2.4", + "privateIPAllocationMethod" : "Dynamic", + "publicIPAddress" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip2" + }, + "subnet" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet2/subnets/default" + }, + "primary" : true, + "privateIPAddressVersion" : "IPv4" + } + } + ], + "dnsSettings" : { + "dnsServers" : [], + "appliedDnsServers" : [] + }, + "enableAcceleratedNetworking" : true, + "enableIPForwarding" : false + }, + "type" : "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceListAll.json new file mode 100644 index 000000000000..865a889b09e4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceListAll.json @@ -0,0 +1,89 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name" : "test-nic", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location" : "eastus", + "properties" : { + "provisioningState" : "Succeeded", + "ipConfigurations" : [{ + "name" : "ipconfig1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties" : { + "provisioningState" : "Succeeded", + "privateIPAddress" : "172.20.2.4", + "privateIPAllocationMethod" : "Dynamic", + "publicIPAddress" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary" : true, + "privateIPAddressVersion" : "IPv4" + } + } + ], + "dnsSettings" : { + "dnsServers" : [], + "appliedDnsServers" : [], + "internalDomainNameSuffix" : "test.bx.internal.cloudapp.net" + }, + "macAddress" : "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking" : true, + "enableIPForwarding" : false, + "networkSecurityGroup" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary" : true, + "virtualMachine" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type" : "Microsoft.Network/networkInterfaces" + }, + { + "name" : "test-nic2", + "id" : "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/networkInterfaces/test-nic2", + "location" : "eastus", + "properties" : { + "provisioningState" : "Succeeded", + "ipConfigurations" : [{ + "name" : "ipconfig1", + "id" : "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/networkInterfaces/test-nic2/ipConfigurations/ipconfig1", + "properties" : { + "provisioningState" : "Succeeded", + "privateIPAddress" : "172.20.2.4", + "privateIPAllocationMethod" : "Dynamic", + "publicIPAddress" : { + "id" : "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/publicIPAddresses/test-ip2" + }, + "subnet" : { + "id" : "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/virtualNetworks/rgnew-vnet2/subnets/default" + }, + "primary" : true, + "privateIPAddressVersion" : "IPv4" + } + } + ], + "dnsSettings" : { + "dnsServers" : [], + "appliedDnsServers" : [] + }, + "enableAcceleratedNetworking" : true, + "enableIPForwarding" : false + }, + "type" : "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceLoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceLoadBalancerList.json new file mode 100644 index 000000000000..56ac17edc5b2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceLoadBalancerList.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2018-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lbname1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "frontendIPConfigurations": [ + { + "name": "lbfrontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/publicIPAddresses/myDynamicPublicIP" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "bepool1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/probes/probe1" + } + } + } + ], + "probes": [ + { + "name": "probe1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/probes/probe1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inbound1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1" + } + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceTapConfigurationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceTapConfigurationCreate.json new file mode 100644 index 000000000000..805a210a479f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceTapConfigurationCreate.json @@ -0,0 +1,47 @@ +{ + "parameters" : { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2018-12-01", + "tapConfigurationParameters": { + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + } + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + }, + "201" : { + "body" : { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + } + } +} + diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceTapConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceTapConfigurationDelete.json new file mode 100644 index 000000000000..4900fd681253 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceTapConfigurationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-networkinterface", + "tapConfigurationName": "test-tapconfiguration" + }, + "responses" : { + "200" : { }, + "202" : { }, + "204" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceTapConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceTapConfigurationGet.json new file mode 100644 index 000000000000..41292ca435e3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceTapConfigurationGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2018-12-01" + }, + "responses": { + "200": { + "body": + { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceTapConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceTapConfigurationList.json new file mode 100644 index 000000000000..c738db1378c0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceTapConfigurationList.json @@ -0,0 +1,28 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "mynic" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceUpdateTags.json new file mode 100644 index 000000000000..aff624785b8c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkInterfaceUpdateTags.json @@ -0,0 +1,55 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "test-nic", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location" : "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties" : { + "provisioningState" : "Succeeded", + "ipConfigurations" : [{ + "name" : "ipconfig1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties" : { + "provisioningState" : "Succeeded", + "privateIPAddress" : "172.20.2.4", + "privateIPAllocationMethod" : "Dynamic", + "publicIPAddress" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary" : true, + "privateIPAddressVersion" : "IPv4" + } + } + ], + "dnsSettings" : { + "dnsServers" : [], + "appliedDnsServers" : [] + }, + "enableAcceleratedNetworking" : true, + "enableIPForwarding" : false + }, + "type" : "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileCreateConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileCreateConfigOnly.json new file mode 100644 index 000000000000..49a04352a066 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileCreateConfigOnly.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1", + "location": "westus", + "parameters": { + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "properties": { + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfig1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + }, + "201": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfig1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileDelete.json new file mode 100644 index 000000000000..47605ea505c0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": { }, + "202": { }, + "204": { } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileGetConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileGetConfigOnly.json new file mode 100644 index 000000000000..2b53b7e58679 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileGetConfigOnly.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + }, + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileGetWithContainerNic.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileGetWithContainerNic.json new file mode 100644 index 000000000000..d13a268d0dee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileGetWithContainerNic.json @@ -0,0 +1,203 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ], + "containerNetworkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth0" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth0" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth0" + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + }, + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ], + "containerNetworkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth1" + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [ + { + "name": "containerGroup1_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup1" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup1_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup1" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup2_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup2" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup2_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup2" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup3_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup3" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup3_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup3" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + } + ] + } + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileList.json new file mode 100644 index 000000000000..eda9495b57f5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileList.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "name": "networkProfile1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile2", + "name": "networkProfile2", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileListAll.json new file mode 100644 index 000000000000..397e381e9b25 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileListAll.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "name": "networkProfile1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile2", + "name": "networkProfile2", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileUpdateTags.json new file mode 100644 index 000000000000..0135374a7ce9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkProfileUpdateTags.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "test-np", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-np", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-np", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupCreate.json new file mode 100644 index 000000000000..21cbadfd8331 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupCreate.json @@ -0,0 +1,231 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkSecurityGroupName" : "testnsg", + "parameters": {} + }, + "responses" : { + "200" : { + "body" : { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + }, + "201" : { + "body" : { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupCreateWithRule.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupCreateWithRule.json new file mode 100644 index 000000000000..85043dacf977 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupCreateWithRule.json @@ -0,0 +1,281 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkSecurityGroupName" : "testnsg", + "parameters": { + "properties": { + "securityRules": [ + { + "name": "rule1", + "properties": { + "protocol": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "destinationPortRange": "80", + "sourcePortRange": "*", + "priority": 130, + "direction": "Inbound" + } + } + ] + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + }, + "201" : { + "body" : { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupDelete.json new file mode 100644 index 000000000000..1d1195655d07 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkSecurityGroupName" : "testnsg" + }, + "responses" : { + "200" : { }, + "202" : { }, + "204" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupGet.json new file mode 100644 index 000000000000..939bf5fd142d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupGet.json @@ -0,0 +1,136 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkSecurityGroupName" : "testnsg" + }, + "responses" : { + "200" : { + "body" : { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupList.json new file mode 100644 index 000000000000..58fbf10fabf5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupList.json @@ -0,0 +1,231 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "nsg1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + }, + { + "name": "nsg3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupListAll.json new file mode 100644 index 000000000000..77eb8873a3c5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupListAll.json @@ -0,0 +1,230 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "nsg1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + }, + { + "name": "nsg3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupRuleCreate.json new file mode 100644 index 000000000000..a37b2421f3aa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupRuleCreate.json @@ -0,0 +1,57 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkSecurityGroupName" : "testnsg", + "securityRuleName": "rule1", + "securityRuleParameters": { + "properties": { + "protocol": "*", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "destinationPortRange": "8080", + "sourcePortRange": "*", + "priority": 100, + "direction": "Outbound" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "rule1", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "8080", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "priority": 100, + "direction": "Outbound" + } + } + }, + "201" : { + "body" : { + "name": "rule1", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "8080", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "priority": 100, + "direction": "Outbound" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupRuleDelete.json new file mode 100644 index 000000000000..500eb3811575 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkSecurityGroupName" : "testnsg", + "securityRuleName": "rule1" + }, + "responses" : { + "200" : { }, + "202" : { }, + "204" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupRuleGet.json new file mode 100644 index 000000000000..c37b85bfcc46 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupRuleGet.json @@ -0,0 +1,28 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkSecurityGroupName" : "testnsg", + "securityRuleName": "rule1" + }, + "responses" : { + "200" : { + "body" : { + "name": "rule1", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupRuleList.json new file mode 100644 index 000000000000..2a3604a67cb5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupRuleList.json @@ -0,0 +1,31 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkSecurityGroupName" : "testnsg" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "rule1", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupUpdateTags.json new file mode 100644 index 000000000000..1dd16e5d5040 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkSecurityGroupUpdateTags.json @@ -0,0 +1,130 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkSecurityGroupName" : "testnsg", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherAvailableProvidersListGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherAvailableProvidersListGet.json new file mode 100644 index 000000000000..86e2e394f934 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherAvailableProvidersListGet.json @@ -0,0 +1,66 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "parameters" : { + "azureLocations" : [ "West US" ], + "country" : "United States", + "state" : "washington", + "city" : "seattle" + } + }, + "responses" : { + "200" : { + "body" : { + "countries" : [ + { + "countryName" : "United States", + "states" : [ + { + "stateName" : "washington", + "cities" : [ + { + "cityName" : "seattle", + "providers" : [ + "Comcast Cable Communications, Inc. - ASN 7922", + "Comcast Cable Communications, LLC - ASN 7922", + "Level 3 Communications, Inc. (GBLX) - ASN 3549", + "Qwest Communications Company, LLC - ASN 209" + ] + } + ] + } + ] + } + ] + } + }, + "202" : { + "body" : { + "countries" : [ + { + "countryName" : "United States", + "states" : [ + { + "stateName" : "washington", + "cities" : [ + { + "cityName" : "seattle", + "providers" : [ + "Comcast Cable Communications, Inc. - ASN 7922", + "Comcast Cable Communications, LLC - ASN 7922", + "Level 3 Communications, Inc. (GBLX) - ASN 3549", + "Qwest Communications Company, LLC - ASN 209" + ] + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherAzureReachabilityReportGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherAzureReachabilityReportGet.json new file mode 100644 index 000000000000..0d2b8de1037c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherAzureReachabilityReportGet.json @@ -0,0 +1,82 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "parameters" : { + "providerLocation" : { + "country" : "United States", + "state" : "washington" + }, + "providers" : [ + "Frontier Communications of America, Inc. - ASN 5650" + ], + "azureLocations" : [ + "West US" + ], + "startTime": "2017-09-07T00:00:00Z", + "endTime": "2017-09-10T00:00:00Z" + } + }, + "responses" : { + "200" : { + "body" : { + "aggregationLevel" : "State", + "providerLocation" : { + "country" : "United States", + "state" : "washington" + }, + "reachabilityReport" : [ + { + "provider" : "Frontier Communications of America, Inc. - ASN 5650", + "azureLocation": "West US", + "latencies": [ + { + "timeStamp": "2017-09-07T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-08T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-09T00:00:00Z", + "score": 94 + } + ] + } + ] + } + }, + "202" : { + "body" : { + "aggregationLevel" : "State", + "providerLocation" : { + "country" : "United States", + "state" : "washington" + }, + "reachabilityReport" : [ + { + "provider" : "Frontier Communications of America, Inc. - ASN 5650", + "azureLocation": "West US", + "latencies": [ + { + "timeStamp": "2017-09-07T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-08T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-09T00:00:00Z", + "score": 94 + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorCreate.json new file mode 100644 index 000000000000..76685a791e0d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorCreate.json @@ -0,0 +1,70 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "connectionMonitorName" : "cm1", + "location": "centraluseuap", + "parameters" : { + "properties": { + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60 + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "cm1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag" : "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties" : { + "provisioningState": "Updating", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "monitoringStatus": "NotStarted" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + }, + "201" : { + "body" : { + "name" : "cm1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag" : "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties" : { + "provisioningState": "Updating", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "monitoringStatus": "NotStarted" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorDelete.json new file mode 100644 index 000000000000..6e82e507617f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorDelete.json @@ -0,0 +1,13 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "connectionMonitorName" : "cm1" + }, + "responses" : { + "204" : {}, + "202" : {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorGet.json new file mode 100644 index 000000000000..5c8bc43e93e1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorGet.json @@ -0,0 +1,35 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "connectionMonitorName" : "cm1" + }, + "responses" : { + "200" : { + "body" : { + "name" : "cm1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag" : "W/\"00000000-0000-0000-0000-000000000000\"", + "properties" : { + "provisioningState" : "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2018-01-08T03:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorList.json new file mode 100644 index 000000000000..b8d53a3c108d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorList.json @@ -0,0 +1,60 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1" + }, + "responses" : { + "200" : { + "body" : { + "value" : [ + { + "name" : "cm1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag" : "W/\"00000000-0000-0000-0000-000000000000\"", + "properties" : { + "provisioningState" : "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2018-01-08T03:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + }, + { + "name" : "cm2", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm2", + "etag" : "W/\"00000000-0000-0000-0000-000000000000\"", + "properties" : { + "provisioningState" : "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm2", + "port": 0 + }, + "destination": { + "address": "google.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 30, + "autoStart": true, + "startTime": "2018-01-08T05:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorQuery.json new file mode 100644 index 000000000000..85df0b9d9ec7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorQuery.json @@ -0,0 +1,77 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "connectionMonitorName" : "cm1" + }, + "responses" : { + "200" : { + "body" : { + "sourceStatus": "Active", + "states" : [ + { + "connectionState" : "Reachable", + "startTime" : "2018-01-08T03:42:33.3387305Z", + "endTime" : "2018-01-08T05:12:41.5265438Z", + "evaluationState" : "Completed", + "hops" : [ + { + "type" : "Source", + "id" : "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address" : "10.1.1.4", + "resourceId" : "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds" : [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues" : [] + }, + { + "type" : "VirtualNetwork", + "id" : "75c8d819-b208-4584-a311-1aa45ce753f9", + "address" : "192.168.100.4", + "resourceId" : "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds" : [], + "issues" : [] + } + ] + } + ] + } + }, + "202" : { + "body" : { + "sourceStatus": "Active", + "states" : [ + { + "connectionState" : "Reachable", + "startTime" : "2018-01-08T03:42:33.3387305Z", + "endTime" : "2018-01-08T05:12:41.5265438Z", + "evaluationState" : "Completed", + "hops" : [ + { + "type" : "Source", + "id" : "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address" : "10.1.1.4", + "resourceId" : "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds" : [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues" : [] + }, + { + "type" : "VirtualNetwork", + "id" : "75c8d819-b208-4584-a311-1aa45ce753f9", + "address" : "192.168.100.4", + "resourceId" : "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds" : [], + "issues" : [] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorStart.json new file mode 100644 index 000000000000..c97f6edc30c6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorStart.json @@ -0,0 +1,13 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "connectionMonitorName" : "cm1" + }, + "responses" : { + "200" : {}, + "202" : {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorStop.json new file mode 100644 index 000000000000..c97f6edc30c6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectionMonitorStop.json @@ -0,0 +1,13 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "connectionMonitorName" : "cm1" + }, + "responses" : { + "200" : {}, + "202" : {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectivityCheck.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectivityCheck.json new file mode 100644 index 000000000000..b71182f10969 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherConnectivityCheck.json @@ -0,0 +1,79 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "parameters" : { + "source" : { + "resourceId" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "destination" : { + "address" : "192.168.100.4", + "port" : 3389 + } + } + }, + "responses" : { + "200" : { + "body" : { + "hops" : [ + { + "type" : "Source", + "id" : "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address" : "10.1.1.4", + "resourceId" : "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds" : [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues" : [] + }, + { + "type" : "VirtualNetwork", + "id" : "75c8d819-b208-4584-a311-1aa45ce753f9", + "address" : "192.168.100.4", + "resourceId" : "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds" : [], + "issues" : [] + } + ], + "connectionStatus" : "Connected", + "avgLatencyInMs" : 1, + "minLatencyInMs" : 1, + "maxLatencyInMs" : 4, + "probesSent" : 100, + "probesFailed" : 0 + } + }, + "202" : { + "body" : { + "hops" : [ + { + "type" : "Source", + "id" : "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address" : "10.1.1.4", + "resourceId" : "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds" : [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues" : [] + }, + { + "type" : "VirtualNetwor", + "id" : "75c8d819-b208-4584-a311-1aa45ce753f9", + "address" : "192.168.100.4", + "resourceId" : "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds" : [], + "issues" : [] + } + ], + "connectionStatus" : "Connected", + "avgLatencyInMs" : 1, + "minLatencyInMs" : 1, + "maxLatencyInMs" : 4, + "probesSent" : 100, + "probesFailed" : 0 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherCreate.json new file mode 100644 index 000000000000..b22c0cfb652c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherCreate.json @@ -0,0 +1,41 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "parameters" : { + "location" : "eastus", + "properties" : { + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "nw1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag" : "W/\"00000000-0000-0000-0000-000000000000\"", + "type" : "Microsoft.Network/networkWatchers", + "location" : "eastus", + "tags" : {}, + "properties" : { + "provisioningState" : "Succeeded" + } + } + }, + "201" : { + "body" : { + "name" : "nw1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag" : "W/\"00000000-0000-0000-0000-000000000000\"", + "type" : "Microsoft.Network/networkWatchers", + "location" : "eastus", + "tags" : {}, + "properties" : { + "provisioningState" : "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherDelete.json new file mode 100644 index 000000000000..ecf423742677 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherDelete.json @@ -0,0 +1,12 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1" + }, + "responses" : { + "202" : {}, + "204" : {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherFlowLogConfigure.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherFlowLogConfigure.json new file mode 100644 index 000000000000..026f7dd28f9c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherFlowLogConfigure.json @@ -0,0 +1,35 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "parameters" : { + "targetResourceId" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties" : { + "storageId" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled" : true + } + } + }, + "responses" : { + "200" : { + "body" : { + "targetResourceId" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties" : { + "storageId" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled" : true + } + } + }, + "202" : { + "body" : { + "targetResourceId" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties" : { + "storageId" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled" : true + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherFlowLogStatusQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherFlowLogStatusQuery.json new file mode 100644 index 000000000000..43a54dcd2e50 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherFlowLogStatusQuery.json @@ -0,0 +1,31 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "parameters" : { + "targetResourceId" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + } + }, + "responses" : { + "200" : { + "body" : { + "targetResourceId" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties" : { + "storageId" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled" : true + } + } + }, + "202" : { + "body" : { + "targetResourceId" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties" : { + "storageId" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled" : true + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherGet.json new file mode 100644 index 000000000000..b083f8a49cc3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherGet.json @@ -0,0 +1,23 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1" + }, + "responses" : { + "200" : { + "body" : { + "name" : "nw1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag" : "W/\"00000000-0000-0000-0000-000000000000\"", + "type" : "Microsoft.Network/networkWatchers", + "location" : "eastus", + "tags" : {}, + "properties" : { + "provisioningState" : "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherIpFlowVerify.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherIpFlowVerify.json new file mode 100644 index 000000000000..00e4e779720c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherIpFlowVerify.json @@ -0,0 +1,31 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "parameters" : { + "targetResourceId" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "direction" : "Outbound", + "protocol" : "TCP", + "localPort" : "80", + "remotePort" : "80", + "localIPAddress" : "10.2.0.4", + "remoteIPAddress" : "121.10.1.1" + } + }, + "responses" : { + "200" : { + "body" : { + "access" : "Allow", + "ruleName" : "Rule1" + } + }, + "202" : { + "body" : { + "access" : "Allow", + "ruleName" : "Rule1" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherList.json new file mode 100644 index 000000000000..cc56f2a8e39c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherList.json @@ -0,0 +1,37 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1" + }, + "responses" : { + "200" : { + "body" : { + "value" : [ + { + "name" : "nw1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag" : "W/\"00000000-0000-0000-0000-000000000000\"", + "type" : "Microsoft.Network/networkWatchers", + "location" : "eastus", + "tags" : {}, + "properties" : { + "provisioningState" : "Succeeded" + } + }, + { + "name" : "nw2", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw2", + "etag" : "W/\"00000000-0000-0000-0000-000000000000\"", + "type" : "Microsoft.Network/networkWatchers", + "location" : "eastus", + "tags" : {}, + "properties" : { + "provisioningState" : "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherListAll.json new file mode 100644 index 000000000000..840d47777c8e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherListAll.json @@ -0,0 +1,36 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid" + }, + "responses" : { + "200" : { + "body" : { + "value" : [ + { + "name" : "nw1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag" : "W/\"00000000-0000-0000-0000-000000000000\"", + "type" : "Microsoft.Network/networkWatchers", + "location" : "eastus", + "tags" : {}, + "properties" : { + "provisioningState" : "Succeeded" + } + }, + { + "name" : "nw2", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw2", + "etag" : "W/\"00000000-0000-0000-0000-000000000000\"", + "type" : "Microsoft.Network/networkWatchers", + "location" : "westus", + "tags" : {}, + "properties" : { + "provisioningState" : "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json new file mode 100644 index 000000000000..1d7a483be899 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json @@ -0,0 +1,198 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "parameters" : { + "targetResourceId" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "profiles": [ + { + "direction" : "Inbound", + "protocol" : "TCP", + "source" : "10.1.0.4", + "destination" : "12.11.12.14", + "destinationPort" : "12100" + } + ] + } + }, + "responses" : { + "200" : { + "body" : { + "results": [ + { + "profile": { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + }, + "networkSecurityGroupResult": { + "securityRuleAccessResult": "Allow", + "evaluatedNetworkSecurityGroups": [ + { + "networkSecurityGroupId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/subnets/AppSubnet", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_Cleanuptool-Allow-100", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-101", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-102", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Deny-103", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + }, + { + "networkSecurityGroupId": "/subscriptions/61cc8a98-a8be-4bfe-a04e-0b461f93fe35/resourceGroups/NwRgCentralUSEUAP_copy/providers/Microsoft.Network/networkSecurityGroups/AppNSG", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/networkInterfaces/nic", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + } + ] + } + } + ] + } + }, + "202" : { + "body" : { + "results": [ + { + "profile": { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + }, + "networkSecurityGroupResult": { + "securityRuleAccessResult": "Allow", + "evaluatedNetworkSecurityGroups": [ + { + "networkSecurityGroupId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/subnets/AppSubnet", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_Cleanuptool-Allow-100", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-101", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-102", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Deny-103", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + }, + { + "networkSecurityGroupId": "/subscriptions/61cc8a98-a8be-4bfe-a04e-0b461f93fe35/resourceGroups/NwRgCentralUSEUAP_copy/providers/Microsoft.Network/networkSecurityGroups/AppNSG", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/networkInterfaces/nic", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherNextHopGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherNextHopGet.json new file mode 100644 index 000000000000..657d35417bc9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherNextHopGet.json @@ -0,0 +1,30 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "parameters" : { + "targetResourceId" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "sourceIPAddress" : "10.0.0.5", + "destinationIPAddress" : "10.0.0.10", + "targetNicResourceId" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1" + } + }, + "responses" : { + "200" : { + "body" : { + "nextHopType" : "VnetLocal", + "nextHopIpAddress" : "10.0.0.1", + "routeTableId" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/rt1" + } + }, + "202" : { + "body" : { + "nextHopType" : "VnetLocal", + "nextHopIpAddress" : "10.0.0.1", + "routeTableId" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/rt1" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherPacketCaptureCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherPacketCaptureCreate.json new file mode 100644 index 000000000000..c23c4f56703c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherPacketCaptureCreate.json @@ -0,0 +1,56 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "packetCaptureName" : "pc1", + "parameters" : { + "properties" : { + "target" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket" : 10000, + "totalBytesPerSession" : 100000, + "timeLimitInSeconds" : 100, + "storageLocation" : { + "storageId" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath" : "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath" : "D:\\capture\\pc1.cap" + }, + "filters" : [ + { + "protocol" : "TCP", + "localIPAddress" : "10.0.0.4", + "localPort" : "80" + } + ] + } + } + }, + "responses" : { + "201" : { + "body" : { + "name" : "pc1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "properties" : { + "provisioningState" : "Updating", + "target" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket" : 10000, + "totalBytesPerSession" : 100000, + "timeLimitInSeconds" : 100, + "storageLocation" : { + "storageId" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath" : "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath" : "D:\\capture\\pc1.cap" + }, + "filters" : [ + { + "protocol" : "TCP", + "localIPAddress" : "10.0.0.4", + "localPort" : "80" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherPacketCaptureDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherPacketCaptureDelete.json new file mode 100644 index 000000000000..a8eddc282279 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherPacketCaptureDelete.json @@ -0,0 +1,13 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "packetCaptureName" : "pc1" + }, + "responses" : { + "204" : {}, + "202" : {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherPacketCaptureGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherPacketCaptureGet.json new file mode 100644 index 000000000000..0000b3e0cc7a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherPacketCaptureGet.json @@ -0,0 +1,37 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "packetCaptureName" : "pc1" + }, + "responses" : { + "200" : { + "body" : { + "name" : "pc1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "etag" : "W/\"00000000-0000-0000-0000-000000000000\"", + "properties" : { + "provisioningState" : "Updating", + "target" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket" : 10000, + "totalBytesPerSession" : 100000, + "timeLimitInSeconds" : 100, + "storageLocation" : { + "storageId" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath" : "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath" : "D:\\capture\\pc1.cap" + }, + "filters" : [ + { + "protocol" : "TCP", + "localIPAddress" : "10.0.0.4", + "localPort" : "80" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherPacketCaptureQueryStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherPacketCaptureQueryStatus.json new file mode 100644 index 000000000000..5460e5541081 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherPacketCaptureQueryStatus.json @@ -0,0 +1,31 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "packetCaptureName" : "pc1" + }, + "responses" : { + "200" : { + "body" : { + "name" : "pc1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "captureStartTime" : "2016-09-07T12:35:24Z", + "packetCaptureStatus" : "Stopped", + "stopReason" : "TimeExceeded", + "packetCaptureError" : [] + } + }, + "202" : { + "body" : { + "name" : "pc1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "captureStartTime" : "2016-09-07T12:35:24Z", + "packetCaptureStatus" : "Stopped", + "stopReason" : "TimeExceeded", + "packetCaptureError" : [] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherPacketCaptureStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherPacketCaptureStop.json new file mode 100644 index 000000000000..845402270880 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherPacketCaptureStop.json @@ -0,0 +1,13 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "packetCaptureName" : "pc1" + }, + "responses" : { + "200" : {}, + "202" : {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherPacketCapturesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherPacketCapturesList.json new file mode 100644 index 000000000000..7aaa6a4d49f5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherPacketCapturesList.json @@ -0,0 +1,58 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1" + }, + "responses" : { + "200" : { + "body" : { + "value" : [ + { + "name" : "pc1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "etag" : "W/\"00000000-0000-0000-0000-000000000000\"", + "properties" : { + "provisioningState" : "Updating", + "target" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket" : 10000, + "totalBytesPerSession" : 100000, + "timeLimitInSeconds" : 100, + "storageLocation" : { + "storageId" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath" : "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath" : "D:\\capture\\pc1.cap" + }, + "filters" : [ + { + "protocol" : "TCP", + "localIPAddress" : "10.0.0.4", + "localPort" : "80" + } + ] + } + }, + { + "name" : "pc2", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc2", + "etag" : "W/\"00000000-0000-0000-0000-000000000000\"", + "properties" : { + "provisioningState" : "Succeeded", + "target" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket" : 10000, + "totalBytesPerSession" : 100000, + "timeLimitInSeconds" : 100, + "storageLocation" : { + "storageId" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath" : "https://mytestaccountname.blob.core.windows.net/capture/pc2.cap", + "filePath" : "D:\\capture\\pc2.cap" + }, + "filters" : [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherSecurityGroupViewGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherSecurityGroupViewGet.json new file mode 100644 index 000000000000..710329090676 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherSecurityGroupViewGet.json @@ -0,0 +1,141 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "parameters" : { + "targetResourceId" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "responses" : { + "200" : { + "body" : { + "networkInterfaces" : [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1", + "securityRuleAssociations" : { + "subnetAssociation" : { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "securityRules" : [ + { + "name" : "fe_rule", + "id" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/AppNSG/securityRules/fe_rule", + "etag" : "W/\"00000000-0000-0000-0000-000000000000\"", + "properties" : { + "provisioningState" : "Succeeded", + "description" : "Allow Frontend", + "protocol" : "Tcp", + "sourcePortRange" : "*", + "destinationPortRange" : "*", + "sourceAddressPrefix" : "10.1.0.0/24", + "destinationAddressPrefix" : "*", + "access" : "Allow", + "priority" : 100, + "direction" : "Inbound" + } + } + ] + }, + "defaultSecurityRules" : [ + { + "name" : "AllowVnetInBound", + "id" : "/subscriptions//resourceGroups//providers/Microsoft.Network/networkSecurityGroups//defaultSecurityRules/", + "properties" : { + "provisioningState" : "Succeeded", + "description" : "Allow inbound traffic from all VMs in VNET", + "protocol" : "*", + "sourcePortRange" : "*", + "destinationPortRange" : "*", + "sourceAddressPrefix" : "VirtualNetwork", + "destinationAddressPrefix" : "VirtualNetwork", + "access" : "Allow", + "priority" : 65000, + "direction" : "Inbound" + } + } + ], + "effectiveSecurityRules" : [ + { + "name" : "DefaultOutboundDenyAll", + "protocol" : "All", + "sourcePortRange" : "0-65535", + "destinationPortRange" : "0-65535", + "sourceAddressPrefix" : "*", + "destinationAddressPrefix" : "*", + "access" : "Deny", + "priority" : 65500, + "direction" : "Outbound" + } + ] + } + } + ] + } + }, + "202" : { + "body" : { + "networkInterfaces": [ + { + "id" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1", + "securityRuleAssociations" : { + "subnetAssociation" : { + "id" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "securityRules" : [ + { + "name" : "fe_rule", + "id" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/AppNSG/securityRules/fe_rule", + "etag" : "W/\"00000000-0000-0000-0000-000000000000\"", + "properties" : { + "provisioningState" : "Succeeded", + "description" : "Allow Frontend", + "protocol" : "Tcp", + "sourcePortRange" : "*", + "destinationPortRange" : "*", + "sourceAddressPrefix" : "10.1.0.0/24", + "destinationAddressPrefix" : "*", + "access" : "Allow", + "priority" : 100, + "direction" : "Inbound" + } + } + ] + }, + "defaultSecurityRules" : [ + { + "name" : "AllowVnetInBound", + "id" : "/subscriptions//resourceGroups//providers/Microsoft.Network/networkSecurityGroups//defaultSecurityRules/", + "properties" : { + "provisioningState" : "Succeeded", + "description" : "Allow inbound traffic from all VMs in VNET", + "protocol" : "*", + "sourcePortRange" : "*", + "destinationPortRange" : "*", + "sourceAddressPrefix" : "VirtualNetwork", + "destinationAddressPrefix" : "VirtualNetwork", + "access" : "Allow", + "priority" : 65000, + "direction" : "Inbound" + } + } + ], + "effectiveSecurityRules" : [ + { + "name" : "DefaultOutboundDenyAll", + "protocol" : "All", + "sourcePortRange" : "0-65535", + "destinationPortRange" : "0-65535", + "sourceAddressPrefix" : "*", + "destinationAddressPrefix" : "*", + "access" : "Deny", + "priority" : 65500, + "direction" : "Outbound" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherTopologyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherTopologyGet.json new file mode 100644 index 000000000000..dd56ed5ad229 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherTopologyGet.json @@ -0,0 +1,39 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "parameters" : { + "targetResourceGroupName": "rg2" + } + }, + "responses" : { + "200" : { + "body" : { + "id" : "ce592f46-8164-4bf2-ad36-b8e4acf6fb68", + "createdDateTime" : "2017-08-02T19:31:55.9461781Z", + "lastModified" : "2017-05-27T00:00:13.2005337Z", + "resources" : [ + { + "name" : "MultiTierApp0", + "id" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/MultiTierApp0", + "location" : "westus", + "associations" : [ + { + "name" : "appNic0", + "resourceId" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/appNic0", + "associationType" : "Contains" + }, + { + "name" : "appNic10", + "resourceId" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/appNic10", + "associationType" : "Contains" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherTroubleshootGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherTroubleshootGet.json new file mode 100644 index 000000000000..5d869ebc0596 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherTroubleshootGet.json @@ -0,0 +1,71 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "parameters" : { + "targetResourceId" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "properties" : { + "storageId" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "storagePath" : "https://st1.blob.core.windows.net/cn1" + } + } + }, + "responses" : { + "200" : { + "body" : { + "startTime" : "2017-01-12T00:19:47.0442834Z", + "endTime" : "2017-01-12T00:20:09.914Z", + "code" : "UnHealthy", + "results" : [ + { + "id": "000000", + "reasonType" : "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + }, + "202" : { + "body" : { + "startTime" : "2017-01-12T00:19:47.0442834Z", + "endTime" : "2017-01-12T00:20:09.914Z", + "code" : "UnHealthy", + "results" : [ + { + "id": "000000", + "reasonType" : "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherTroubleshootResultQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherTroubleshootResultQuery.json new file mode 100644 index 000000000000..9911d07b6457 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherTroubleshootResultQuery.json @@ -0,0 +1,67 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "parameters" : { + "targetResourceId" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "responses" : { + "200" : { + "body" : { + "startTime" : "2017-01-12T00:19:47.0442834Z", + "endTime" : "2017-01-12T00:20:09.914Z", + "code" : "UnHealthy", + "results" : [ + { + "id": "000000", + "reasonType" : "VipUnResponsive", + "summary" : "We are sorry, your VPN gateway is unreachable from the Internet", + "detail" : "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions" : [ + { + "actionText" : "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri" : "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText" : "Verify" + }, + { + "actionText" : "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri" : "http://azure.microsoft.com/support", + "actionUriText" : "contact support" + } + ] + } + ] + } + }, + "202" : { + "body" : { + "startTime" : "2017-01-12T00:19:47.0442834Z", + "endTime" : "2017-01-12T00:20:09.914Z", + "code" : "UnHealthy", + "results" : [ + { + "id" : "000000", + "reasonType" : "VipUnResponsive", + "summary" : "We are sorry, your VPN gateway is unreachable from the Internet", + "detail" : "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions" : [ + { + "actionText" : "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri" : "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText" : "Verify" + }, + { + "actionText" : "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri" : "http://azure.microsoft.com/support", + "actionUriText" : "contact support" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherUpdateTags.json new file mode 100644 index 000000000000..585490ec6f83 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/NetworkWatcherUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkWatcherName" : "nw1", + "parameters" : { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "nw1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag" : "W/\"00000000-0000-0000-0000-000000000000\"", + "type" : "Microsoft.Network/networkWatchers", + "location" : "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties" : { + "provisioningState" : "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/OperationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/OperationList.json new file mode 100644 index 000000000000..a5ca28ca99d4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/OperationList.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Network/localnetworkgateways/read", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Get LocalNetworkGateway", + "description": "Gets LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/localnetworkgateways/write", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Create or update LocalNetworkGateway", + "description": "Creates or updates an existing LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/localnetworkgateways/delete", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Delete LocalNetworkGateway", + "description": "Deletes LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/networkInterfaces/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Network", + "resource": "Network Interface metric definition", + "operation": "Read Network Interface metric definitions", + "description": "Gets available metrics for the Network Interface" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "BytesSentRate", + "displayName": "Bytes Sent", + "displayDescription": "Number of bytes the Network Interface sent", + "unit": "Count", + "aggregationType": "Total", + "availabilities": [ + { + "timeGrain": "00:01:00", + "retention": "00:00:00", + "blobDuration": "01:00:00" + }, + { + "timeGrain": "01:00:00", + "retention": "00:00:00", + "blobDuration": "1.00:00:00" + } + ], + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^__Ready__$", + "fillGapWithZero": false, + "dimensions": [], + "isInternal": false + }, + { + "name": "BytesReceivedRate", + "displayName": "Bytes Received", + "displayDescription": "Number of bytes the Network Interface received", + "unit": "Count", + "aggregationType": "Total", + "availabilities": [ + { + "timeGrain": "00:01:00", + "retention": "00:00:00", + "blobDuration": "01:00:00" + }, + { + "timeGrain": "01:00:00", + "retention": "00:00:00", + "blobDuration": "1.00:00:00" + } + ], + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^__Ready__$", + "fillGapWithZero": false, + "dimensions": [], + "isInternal": false + } + ] + } + } + }, + { + "name": "Microsoft.Network/networksecuritygroups/providers/Microsoft.Insights/logDefinitions/read", + "display": { + "provider": "Microsoft Network", + "resource": "Network Security Groups Log Definitions", + "operation": "Get Network Security Group Event Log Definitions", + "description": "Gets the events for network security group" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "logSpecifications": [ + { + "name": "NetworkSecurityGroupEvent", + "displayName": "Network Security Group Event", + "blobDuration": "PT1H" + }, + { + "name": "NetworkSecurityGroupRuleCounter", + "displayName": "Network Security Group Rule Counter", + "blobDuration": "PT1H" + }, + { + "name": "NetworkSecurityGroupFlowEvent", + "displayName": "Network Security Group Rule Flow Event", + "blobDuration": "PT1H" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayDelete.json new file mode 100644 index 000000000000..3c3211c29adf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { }, + "202": { }, + "204": { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..473a6e59ef53 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayGenerateVpnProfile.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName" : "p2sVpnGateway1", + "parameters": { + "authenticationMethod": "EAPTLS" + } + }, + "responses" : { + "202" : { + }, + "200" : { + "body" : "" + } + } +} + diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayGet.json new file mode 100644 index 000000000000..71d4b9f19393 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayGet.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred":2000, + "totalEgressBytesTransferred":3000 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayList.json new file mode 100644 index 000000000000..f542b0b14525 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayList.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred":2000, + "totalEgressBytesTransferred":3000 + } + } + }, + { + "name": "p2sVpnGateway2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.4.0.0/16" + ] + }, + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred":2000, + "totalEgressBytesTransferred":3000 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..f542b0b14525 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayListByResourceGroup.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred":2000, + "totalEgressBytesTransferred":3000 + } + } + }, + { + "name": "p2sVpnGateway2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.4.0.0/16" + ] + }, + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred":2000, + "totalEgressBytesTransferred":3000 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayPut.json new file mode 100644 index 000000000000..66a966ada37c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayPut.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "p2SVpnGatewayParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "vpnGatewayScaleUnit": 1 + } + } + }, + "responses": { + "200": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + } + } + }, + "201": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayUpdateTags.json new file mode 100644 index 000000000000..ebf60dd32fc7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnGatewayUpdateTags.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "p2SVpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred":2000, + "totalEgressBytesTransferred":3000 + } + } + }, + "201": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "p2SVpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1" + }, + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + }, + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred":2000, + "totalEgressBytesTransferred":3000 + } + } + } + } +} + diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnServerConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnServerConfigurationDelete.json new file mode 100644 index 000000000000..22368230f0f1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnServerConfigurationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "p2SVpnServerConfigurationName": "p2sVpnServerConfiguration1", + "virtualWanName": "virtualWan1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { }, + "202": { }, + "204": { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnServerConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnServerConfigurationGet.json new file mode 100644 index 000000000000..ff79ac6eaa20 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnServerConfigurationGet.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "virtualWanName": "virtualWan1", + "p2SVpnServerConfigurationName": "p2sVpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "name": "p2sVpnServerConfiguration1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations//p2sVpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [{ + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + }], + "p2SVpnServerConfigVpnClientRootCertificates": [{ + "name": "p2sVpnServerConfigVpnClientRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigVpnClientRootCertificates/p2sVpnServerConfigVpnClientRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigVpnClientRootCertificates" + }], + "p2SVpnServerConfigVpnClientRevokedCertificates": [{ + "name": "p2sVpnServerConfigVpnClientRevokedCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigVpnClientRevokedCertificates/p2sVpnServerConfigVpnClientRevokedCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "Thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigVpnClientRevokedCertificates" + }], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret":"123_abc", + "p2SVpnServerConfigRadiusServerRootCertificates": [{ + "name": "p2sVpnServerConfigRadiusServerRootCer1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigRadiusServerRootCertificates/p2sVpnServerConfigRadiusServerRootCer1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigRadiusServerRootCertificates" + }], + "p2SVpnServerConfigRadiusClientRootCertificates": [{ + "name": "p2sVpnServerConfigRadiusClientRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigRadiusClientRootCertificates/p2sVpnServerConfigRadiusClientRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "Thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigRadiusClientRootCertificates" + }] + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnServerConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnServerConfigurationList.json new file mode 100644 index 000000000000..8a55755d3a98 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnServerConfigurationList.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "virtualWanName": "virtualWan1", + "api-version": "2018-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "p2sVpnServerConfiguration1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [{ + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + }], + "p2SVpnServerConfigVpnClientRootCertificates": [{ + "name": "p2sVpnServerConfigVpnClientRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigVpnClientRootCertificates/p2sVpnServerConfigVpnClientRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigVpnClientRootCertificates" + }], + "p2SVpnServerConfigVpnClientRevokedCertificates": [{ + "name": "p2sVpnServerConfigVpnClientRevokedCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigVpnClientRevokedCertificates/VpnClientRevokedCert2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "Thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigVpnClientRevokedCertificates" + }], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret":"123_abc", + "p2SVpnServerConfigRadiusServerRootCertificates": [{ + "name": "p2sVpnServerConfigRadiusServerRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigRadiusServerRootCertificates/p2sVpnServerConfigRadiusServerRootCert", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigRadiusServerRootCertificates" + }], + "p2SVpnServerConfigRadiusClientRootCertificates": [{ + "name": "p2sVpnServerConfigRadiusClientRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigRadiusClientRootCertificates/p2sVpnServerConfigRadiusClientRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "Thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigRadiusClientRootCertificates" + }] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnServerConfigurationPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnServerConfigurationPut.json new file mode 100644 index 000000000000..d98bc6fdbf1b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/P2SVpnServerConfigurationPut.json @@ -0,0 +1,182 @@ +{ + "parameters": { + "virtualWanName": "virtualWan1", + "p2SVpnServerConfigurationName": "p2sVpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "p2SVpnServerConfigurationParameters": { + "properties": { + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [{ + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + }], + "p2SVpnServerConfigVpnClientRootCertificates": [{ + "name": "p2sVpnServerConfigVpnClientRootCert1", + "properties": { + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + }], + "p2SVpnServerConfigVpnClientRevokedCertificates": [{ + "name": "p2sVpnServerConfigVpnClientRevokedCert1", + "properties": { + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + }], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret":"123_abc", + "p2SVpnServerConfigRadiusServerRootCertificates": [{ + "name": "p2sVpnServerConfigRadiusServerRootCert1", + "properties": { + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + }], + "p2SVpnServerConfigRadiusClientRootCertificates": [{ + "name": "p2sVpnServerConfigRadiusClientRootCert1", + "properties": { + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + }] + } + } + }, + "responses": { + "200": { + "name": "p2sVpnServerConfiguration1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations//p2sVpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [{ + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + }], + "p2SVpnServerConfigVpnClientRootCertificates": [{ + "name": "p2sVpnServerConfigVpnClientRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigVpnClientRootCertificates/p2sVpnServerConfigVpnClientRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigVpnClientRootCertificates" + }], + "p2SVpnServerConfigVpnClientRevokedCertificates": [{ + "name": "p2sVpnServerConfigVpnClientRevokedCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigVpnClientRevokedCertificates/p2sVpnServerConfigVpnClientRevokedCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "Thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigVpnClientRevokedCertificates" + }], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret":"123_abc", + "p2SVpnServerConfigRadiusServerRootCertificates": [{ + "name": "p2sVpnServerConfigRadiusServerRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigRadiusServerRootCertificates/p2sVpnServerConfigRadiusServerRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigRadiusServerRootCertificates" + }], + "p2SVpnServerConfigRadiusClientRootCertificates": [{ + "name": "p2sVpnServerConfigRadiusClientRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigRadiusClientRootCertificates/p2sVpnServerConfigRadiusClientRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "Thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigRadiusClientRootCertificates" + }] + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations" + }, + "201": { + "name": "p2sVpnServerConfiguration1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations//p2sVpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [{ + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + }], + "p2SVpnServerConfigVpnClientRootCertificates": [{ + "name": "p2sVpnServerConfigVpnClientRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigVpnClientRootCertificates/p2sVpnServerConfigVpnClientRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigVpnClientRootCertificates" + }], + "p2SVpnServerConfigVpnClientRevokedCertificates": [{ + "name": "p2sVpnServerConfigVpnClientRevokedCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigVpnClientRevokedCertificates/p2sVpnServerConfigVpnClientRevokedCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "Thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigVpnClientRevokedCertificates" + }], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret":"123_abc", + "p2SVpnServerConfigRadiusServerRootCertificates": [{ + "name": "p2sVpnServerConfigRadiusServerRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigRadiusServerRootCertificates/p2sVpnServerConfigRadiusServerRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigRadiusServerRootCertificates" + }], + "p2SVpnServerConfigRadiusClientRootCertificates": [{ + "name": "p2sVpnServerConfigRadiusClientRootCert1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1/p2sVpnServerConfigurations/p2sVpnServerConfiguration1/p2sVpnServerConfigRadiusClientRootCertificates/p2sVpnServerConfigRadiusClientRootCert1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "Thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations/p2sVpnServerConfigRadiusClientRootCertificates" + }] + }, + "type": "Microsoft.Network/virtualWans/p2sVpnServerConfigurations" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressCreateCustomizedValues.json new file mode 100644 index 000000000000..140cece6cfd0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressCreateCustomizedValues.json @@ -0,0 +1,63 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "zones": [ "1" ], + "parameters": { + "properties": { + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "publicIPAddressVersion": "IPv4" + }, + "sku": { + "name": "Standard" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "testDNS-ip", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location" : "westus", + "zones": [ "1" ], + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "publicIPAllocationMethod" : "Static", + "idleTimeoutInMinutes" : 10, + "ipConfiguration" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + }, + "type" : "Microsoft.Network/publicIPAddresses" + } + }, + "201" : { + "body" : { + "name" : "testDNS-ip", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location" : "westus", + "zones": [ "1" ], + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "publicIPAllocationMethod" : "Static", + "idleTimeoutInMinutes" : 10, + "ipConfiguration" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + }, + "type" : "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressCreateDDosCustom.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressCreateDDosCustom.json new file mode 100644 index 000000000000..cd330027bdd0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressCreateDDosCustom.json @@ -0,0 +1,57 @@ +{ + "parameters" : { + "api-version": "2018-11-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "properties": { + "dnsSettings": { + "ddosCustomPolicy": "test-ddos-custom-policy" + } + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "testDDosCustom-ip", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "publicIPAllocationMethod" : "Dynamic", + "idleTimeoutInMinutes" : 4, + "ddosCustomPolicy" : { + "id" : "testDDoSCustomPolicy" + }, + "ipConfiguration" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type" : "Microsoft.Network/publicIPAddresses" + } + }, + "201" : { + "body" : { + "name" : "testDDosCustom-ip", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "publicIPAllocationMethod" : "Dynamic", + "idleTimeoutInMinutes" : 4, + "ddosCustomPolicy" : { + "id" : "testDDoSCustomPolicy" + }, + "ipConfiguration" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type" : "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressCreateDefaults.json new file mode 100644 index 000000000000..7a81f1949558 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressCreateDefaults.json @@ -0,0 +1,51 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": {} + }, + "responses" : { + "200" : { + "body" : { + "name" : "testDNS-ip", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "publicIPAllocationMethod" : "Dynamic", + "idleTimeoutInMinutes" : 4, + "ipConfiguration" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Basic" + }, + "type" : "Microsoft.Network/publicIPAddresses" + } + }, + "201" : { + "body" : { + "name" : "testDNS-ip", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "publicIPAllocationMethod" : "Dynamic", + "idleTimeoutInMinutes" : 4, + "ipConfiguration" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Basic" + }, + "type" : "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressCreateDns.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressCreateDns.json new file mode 100644 index 000000000000..ff95f2576c8c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressCreateDns.json @@ -0,0 +1,59 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "properties": { + "dnsSettings": { + "domainNameLabel": "dnslbl" + } + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "testDNS-ip", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "publicIPAllocationMethod" : "Dynamic", + "idleTimeoutInMinutes" : 4, + "dnsSettings" : { + "domainNameLabel" : "dnslbl", + "fqdn" : "dnslbl.westus.cloudapp.azure.com" + }, + "ipConfiguration" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type" : "Microsoft.Network/publicIPAddresses" + } + }, + "201" : { + "body" : { + "name" : "testDNS-ip", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "publicIPAllocationMethod" : "Dynamic", + "idleTimeoutInMinutes" : 4, + "dnsSettings" : { + "domainNameLabel" : "dnslbl", + "fqdn" : "dnslbl.westus.cloudapp.azure.com" + }, + "ipConfiguration" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type" : "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressDelete.json new file mode 100644 index 000000000000..65533f368b75 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressDelete.json @@ -0,0 +1,13 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip" + }, + "responses" : { + "200" : { }, + "202" : { }, + "204" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressGet.json new file mode 100644 index 000000000000..c70c098df7b4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressGet.json @@ -0,0 +1,37 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "testDNS-ip" + }, + "responses" : { + "200" : { + "body" : { + "name" : "testDNS-ip", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "publicIPAllocationMethod" : "Dynamic", + "idleTimeoutInMinutes" : 4, + "ipConfiguration" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + }, + "ipTags" : [ + { + "ipTagType" : "FirstPartyUsage", + "tag" : "SQL" + }, + { + "ipTagType" : "FirstPartyUsage", + "tag" : "Storage" + } + ] + }, + "type" : "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressList.json new file mode 100644 index 000000000000..2fd8bfa2a495 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressList.json @@ -0,0 +1,60 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1" + }, + "responses" : { + "200" : { + "body" : { + "value" : [ + { + "name" : "testDNS-ip", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "publicIPAllocationMethod" : "Dynamic", + "idleTimeoutInMinutes" : 4, + "ipConfiguration" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + }, + "ipTags" : [ + { + "ipTagType" : "FirstPartyUsage", + "tag" : "SQL" + }, + { + "ipTagType" : "FirstPartyUsage", + "tag" : "Storage" + } + ] + }, + "type" : "Microsoft.Network/publicIPAddresses" + }, + { + "name" : "ip03", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/ip03", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "ipAddress" : "40.85.154.247", + "publicIPAddressVersion" : "IPv4", + "publicIPAllocationMethod" : "Dynamic", + "idleTimeoutInMinutes" : 4, + "dnsSettings" : { + "domainNameLabel" : "testlbl", + "fqdn" : "testlbl.westus.cloudapp.azure.com" + }, + "ipConfiguration" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/testLb/frontendIPConfigurations/LoadBalancerFrontEnd" + } + }, + "type" : "Microsoft.Network/publicIPAddresses" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressListAll.json new file mode 100644 index 000000000000..f71c928126a2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressListAll.json @@ -0,0 +1,49 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid" + }, + "responses" : { + "200" : { + "body" : { + "value" : [ + { + "name" : "testDNS-ip", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "publicIPAllocationMethod" : "Dynamic", + "idleTimeoutInMinutes" : 4, + "ipConfiguration" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type" : "Microsoft.Network/publicIPAddresses" + }, + { + "name" : "ip01", + "id" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/ip01", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "ipAddress" : "40.85.154.247", + "publicIPAddressVersion" : "IPv4", + "publicIPAllocationMethod" : "Dynamic", + "idleTimeoutInMinutes" : 4, + "dnsSettings" : { + "domainNameLabel" : "testlbl", + "fqdn" : "testlbl.westus.cloudapp.azure.com" + }, + "ipConfiguration" : { + "id" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/testLb/frontendIPConfigurations/LoadBalancerFrontEnd" + } + }, + "type" : "Microsoft.Network/publicIPAddresses" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressUpdateTags.json new file mode 100644 index 000000000000..cc1a6cb7b22b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpAddressUpdateTags.json @@ -0,0 +1,37 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "testDNS-ip", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "publicIPAllocationMethod" : "Static", + "idleTimeoutInMinutes" : 10, + "ipConfiguration" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type" : "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixCreateCustomizedValues.json new file mode 100644 index 000000000000..a3d59ca33639 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixCreateCustomizedValues.json @@ -0,0 +1,54 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "zones": [ "1" ], + "parameters": { + "properties": { + "publicIPAddressVersion": "IPv4", + "prefixLength":30 + }, + "sku": { + "name": "Standard" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "test-ipprefix", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "location" : "westus", + "zones": [ "1" ], + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "prefixLength":30 + }, + "sku": { + "name": "Standard" + }, + "type" : "Microsoft.Network/publicIPPrefixes" + } + }, + "201" : { + "body" : { + "name" : "test-ipprefix", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ipprefix", + "location" : "westus", + "zones": [ "1" ], + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "prefixLength":30 + }, + "sku": { + "name": "Standard" + }, + "type" : "Microsoft.Network/publicIPPrefixes" + } + } + } + } \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixCreateDefaults.json new file mode 100644 index 000000000000..209b0c55968d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixCreateDefaults.json @@ -0,0 +1,43 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "parameters": {} + }, + "responses" : { + "200" : { + "body" : { + "name" : "test-ipprefix", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "prefixLength":30 + }, + "sku": { + "name": "Standard" + }, + "type" : "Microsoft.Network/publicIPPrefixes" + } + }, + "201" : { + "body" : { + "name" : "test-ipprefix", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "prefixLength":30 + }, + "sku": { + "name": "Standard" + }, + "type" : "Microsoft.Network/publicIPPrefixes" + } + } + } + } \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixDelete.json new file mode 100644 index 000000000000..74be09c6a129 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixDelete.json @@ -0,0 +1,13 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix" + }, + "responses" : { + "200" : { }, + "202" : { }, + "204" : { } + } + } \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixGet.json new file mode 100644 index 000000000000..0c667dfdca20 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixGet.json @@ -0,0 +1,32 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix" + }, + "responses" : { + "200" : { + "body" : { + "name" : "test-ipprefix", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "prefixLength":30, + "ipPrefix":"192.168.254.2/30", + "ipTags" : [ + ], + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ] + }, + "type" : "Microsoft.Network/publicIPPrefixes" + } + } + } + } + \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixList.json new file mode 100644 index 000000000000..6a3e612bc00f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixList.json @@ -0,0 +1,45 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1" + }, + "responses" : { + "200" : { + "body" : { + "value" : [ + { + "name" : "test-ipprefix", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "prefixLength":30, + "ipPrefix":"40.85.154.2/30", + "ipTags" : [ + { + "ipTagType" : "FirstPartyUsage", + "tag" : "SQL" + } + ] + }, + "type" : "Microsoft.Network/publicIPPrefixes" + }, + { + "name" : "ipprefix03", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/ipprefix03", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "prefixLength":31, + "ipPrefix" : "40.85.153.2/31" + }, + "type" : "Microsoft.Network/publicIPPrefixes" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixListAll.json new file mode 100644 index 000000000000..e5b0aa9262a8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixListAll.json @@ -0,0 +1,44 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid" + }, + "responses" : { + "200" : { + "body" : { + "value" : [ + { + "name" : "test-ipprefix", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "prefixLength":30, + "ipPrefix":"41.85.154.247/30", + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ] + }, + "type" : "Microsoft.Network/publicIPPrefixes" + }, + { + "name" : "ipprefix01", + "id" : "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/ipprefix01", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "ipPrefix" : "40.85.154.247/30", + "publicIPAddressVersion" : "IPv4", + "prefixLength":30 + }, + "type" : "Microsoft.Network/publicIPPrefixes" + } + ] + } + } + } + } + \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixUpdateTags.json new file mode 100644 index 000000000000..3ae9a35d33f0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/PublicIpPrefixUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "test-ipprefix", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "publicIPAddressVersion" : "IPv4", + "prefixLength":30 + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type" : "Microsoft.Network/publicIPPrefixes" + } + } + } + } \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterCreate.json new file mode 100644 index 000000000000..6c46f6bc5347 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterCreate.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "routeFilterParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "rules": [ + { + "name": "ruleName", + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [ ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsofot.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [ ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsofot.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [ ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterDelete.json new file mode 100644 index 000000000000..ffc292bcad07 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { }, + "202": { }, + "204": { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterGet.json new file mode 100644 index 000000000000..35e206dcb516 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsofot.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterList.json new file mode 100644 index 000000000000..883c154ed636 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterList.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsofot.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterListByResourceGroup.json new file mode 100644 index 000000000000..f204f73ab5ba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterListByResourceGroup.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsofot.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterRuleCreate.json new file mode 100644 index 000000000000..0fc7083faa2a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterRuleCreate.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "routeFilterRuleParameters": { + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterRuleDelete.json new file mode 100644 index 000000000000..37732af105a9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { }, + "202": { }, + "204": { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterRuleGet.json new file mode 100644 index 000000000000..017d8f29571c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterRuleGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "ruleName": "filterName", + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterRuleListByRouteFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterRuleListByRouteFilter.json new file mode 100644 index 000000000000..83dc497e8d45 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterRuleListByRouteFilter.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "routeFilterName": "filterName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterRuleUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterRuleUpdate.json new file mode 100644 index 000000000000..b0085659fe94 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterRuleUpdate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "routeFilterRuleParameters": { + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterUpdate.json new file mode 100644 index 000000000000..d91aca95ed2b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteFilterUpdate.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "routeFilterParameters": { + "tags": { + "key1": "value1" + }, + "properties": { + "rules": [ + { + "name": "ruleName", + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030" + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsofot.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableCreate.json new file mode 100644 index 000000000000..7d176e8c0b4f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableCreate.json @@ -0,0 +1,37 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "routeTableName" : "testrt", + "parameters": {} + }, + "responses" : { + "200" : { + "body" : { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ ], + "disableBgpRoutePropagation": true + } + } + }, + "201" : { + "body" : { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [ ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableCreateWithRoute.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableCreateWithRoute.json new file mode 100644 index 000000000000..fa136a411dcf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableCreateWithRoute.json @@ -0,0 +1,69 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "routeTableName" : "testrt", + "parameters": { + "properties": { + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "properties": { + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + }, + "201" : { + "body" : { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableDelete.json new file mode 100644 index 000000000000..96eb4aef7ed2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableDelete.json @@ -0,0 +1,13 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "routeTableName" : "testrt" + }, + "responses" : { + "200" : { }, + "202" : { }, + "204" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableGet.json new file mode 100644 index 000000000000..f8be2eca8030 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableGet.json @@ -0,0 +1,33 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "routeTableName" : "testrt" + }, + "responses" : { + "200" : { + "body" : { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": false, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableList.json new file mode 100644 index 000000000000..4c985f5f8cc0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableList.json @@ -0,0 +1,47 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + }, + { + "name": "testrt2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt2", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "disableBgpRoutePropagation": true, + "provisioningState": "Succeeded", + "routes": [ ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableListAll.json new file mode 100644 index 000000000000..f0160221ce20 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableListAll.json @@ -0,0 +1,44 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + }, + { + "name": "testrt3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/testrt3", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableRouteCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableRouteCreate.json new file mode 100644 index 000000000000..55f5f17bb7e7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableRouteCreate.json @@ -0,0 +1,39 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "routeTableName" : "testrt", + "routeName": "route1", + "routeParameters": { + "properties": { + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + }, + "201" : { + "body" : { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableRouteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableRouteDelete.json new file mode 100644 index 000000000000..52428f839a88 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableRouteDelete.json @@ -0,0 +1,14 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "routeTableName" : "testrt", + "routeName": "route1" + }, + "responses" : { + "200" : { }, + "202" : { }, + "204" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableRouteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableRouteGet.json new file mode 100644 index 000000000000..151e1475142c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableRouteGet.json @@ -0,0 +1,22 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "routeTableName" : "testrt", + "routeName": "route1" + }, + "responses" : { + "200" : { + "body" : { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "Internet" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableRouteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableRouteList.json new file mode 100644 index 000000000000..334f09901798 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableRouteList.json @@ -0,0 +1,34 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "routeTableName" : "testrt" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "Internet" + } + }, + { + "name": "route2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route2", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.2.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableUpdateTags.json new file mode 100644 index 000000000000..f5f9f4093b67 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/RouteTableUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "routeTableName" : "testrt", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "routes": [ ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceCommunityList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceCommunityList.json new file mode 100644 index 000000000000..e442edab7d64 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceCommunityList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsofot.Network/bgpServiceCommunities/skype", + "name": "skype", + "type": "Microsofot.Network/bgpServiceCommunities", + "properties": { + "serviceName" : "skype", + "bgpCommunities": [ + { + "serviceSupportedRegion": "Global", + "communityName": "Skype For Business Online", + "communityValue": "12076:5030", + "communityPrefixes": [ + "13.67.56.225/32", + "13.67.186.105/32" + ], + "isAuthorizedToUse": true, + "serviceGroup" : "O365" + } + ] + } + }, + { + "id": "/subscriptions/subid/providers/Microsofot.Network/bgpServiceCommunities/exchange", + "name": "exchange", + "type": "Microsofot.Network/bgpServiceCommunities", + "properties": { + "serviceName" : "exchange", + "bgpCommunities": [ + { + "serviceSupportedRegion": "Global", + "communityName": "Exchange Online", + "communityValue": "12076:5040", + "communityPrefixes": [ + "13.67.56.225/32", + "13.67.186.105/32" + ], + "isAuthorizedToUse": true, + "serviceGroup" : "O365" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyCreate.json new file mode 100644 index 000000000000..8c51e1782d06 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyCreate.json @@ -0,0 +1,41 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "serviceEndpointPolicyName" : "testPolicy", + "parameters": {} + }, + "responses" : { + "200" : { + "body" : { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": + { + "serviceEndpointPolicyDefinitions": [ ], + "subnets": [ ], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + }, + "201" : { + "body" : { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": + { + "serviceEndpointPolicyDefinitions": [], + "subnets": [ ], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyCreateWithDefinition.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyCreateWithDefinition.json new file mode 100644 index 000000000000..e2ce36aa9642 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyCreateWithDefinition.json @@ -0,0 +1,84 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "serviceEndpointPolicyName" : "testPolicy", + "parameters": { + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ] + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": + { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [ ], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + }, + "201" : { + "body" : { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": + { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [ ], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyDefinitionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyDefinitionCreate.json new file mode 100644 index 000000000000..f0f190833dbb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyDefinitionCreate.json @@ -0,0 +1,52 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "serviceEndpointPolicyName" : "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition", + "ServiceEndpointPolicyDefinitions": { + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "testDefinition", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + }, + "201" : { + "body" : { + "name": "rule1", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyDefinitionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyDefinitionDelete.json new file mode 100644 index 000000000000..ac5fd2b4258c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyDefinitionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "serviceEndpointPolicyName" : "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition" + }, + "responses" : { + "200" : { }, + "202" : { }, + "204" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyDefinitionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyDefinitionGet.json new file mode 100644 index 000000000000..17afee0c150f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyDefinitionGet.json @@ -0,0 +1,26 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "serviceEndpointPolicyName" : "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition" + }, + "responses" : { + "200" : { + "body" : { + "name": "testDefinition", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyDefinitionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyDefinitionList.json new file mode 100644 index 000000000000..e813c19011ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyDefinitionList.json @@ -0,0 +1,29 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "serviceEndpointPolicyName" : "testPolicy" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "testDef", + "id":"/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDef", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyDelete.json new file mode 100644 index 000000000000..9aa0a116c5dd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "serviceEndpointPolicy1" + }, + "responses" : { + "200" : { }, + "202" : { }, + "204" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyGet.json new file mode 100644 index 000000000000..5a67bf612b6f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyGet.json @@ -0,0 +1,39 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testServiceEndpointPolicy" + }, + "responses" : { + "200" : { + "body" : { + "name" : "testServiceEndpointPolicy", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location" : "westus", + "properties": + { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [ ], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} + diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyList.json new file mode 100644 index 000000000000..99608caca3b0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyList.json @@ -0,0 +1,65 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1" + }, + "responses" : { + "200" : { + "body" : { + "value" : [ + { + "name" : "testServiceEndpointPolicy", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "location" : "westus", + "properties": + { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [ ], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + }, + { + "name" : "testServiceEndpointPolicy1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy1", + "location" : "westus", + "properties": + { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [ ], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyListAll.json new file mode 100644 index 000000000000..469bee30d1d1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyListAll.json @@ -0,0 +1,66 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "testPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": + { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [ ], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + }, + { + "name": "testPolicy1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy2", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": + { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition2", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [ ], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyUpdateTags.json new file mode 100644 index 000000000000..a0ae688c2588 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/ServiceEndpointPolicyUpdateTags.json @@ -0,0 +1,47 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testServiceEndpointPolicy", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "testServiceEndpointPolicy", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location" : "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetCreate.json new file mode 100644 index 000000000000..45cc3e8376a6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetCreateServiceEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetCreateServiceEndpoint.json new file mode 100644 index 000000000000..73dbb8ec7cea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetCreateServiceEndpoint.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { "service": "Microsoft.Storage" } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [{ + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ], + "provisioningState": "Succeeded" + }], + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [{ + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ], + "provisioningState": "Succeeded" + }], + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetCreateWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetCreateWithDelegation.json new file mode 100644 index 000000000000..c1c5fb1e6abd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetCreateWithDelegation.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2018-12-01", + "subscriptionId": "subId", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetDelete.json new file mode 100644 index 000000000000..e554cee0d6b7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { }, + "202": { }, + "204": { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetGet.json new file mode 100644 index 000000000000..771011ecd7ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetGetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetGetWithDelegation.json new file mode 100644 index 000000000000..085b2272d6b1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetGetWithDelegation.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2018-12-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetList.json new file mode 100644 index 000000000000..12b3442fae1d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/SubnetList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet2", + "name": "subnet2", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/UsageList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/UsageList.json new file mode 100644 index 000000000000..ca21eaf093d7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/UsageList.json @@ -0,0 +1,265 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": 8.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/VirtualNetworks", + "limit": 50.0, + "name": { + "localizedValue": "Virtual Networks", + "value": "VirtualNetworks" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/StaticPublicIPAddresses", + "limit": 20.0, + "name": { + "localizedValue": "Static Public IP Addresses", + "value": "StaticPublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkSecurityGroups", + "limit": 100.0, + "name": { + "localizedValue": "Network Security Groups", + "value": "NetworkSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 8.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PublicIPAddresses", + "limit": 60.0, + "name": { + "localizedValue": "Public IP Addresses", + "value": "PublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkInterfaces", + "limit": 350.0, + "name": { + "localizedValue": "Network Interfaces", + "value": "NetworkInterfaces" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/LoadBalancers", + "limit": 100.0, + "name": { + "localizedValue": "Load Balancers", + "value": "LoadBalancers" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/ApplicationGateways", + "limit": 50.0, + "name": { + "localizedValue": "Application Gateways", + "value": "ApplicationGateways" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteTables", + "limit": 100.0, + "name": { + "localizedValue": "Route Tables", + "value": "RouteTables" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFilters", + "limit": 1000.0, + "name": { + "localizedValue": "Route Filters", + "value": "RouteFilters" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkWatchers", + "limit": 1.0, + "name": { + "localizedValue": "Network Watchers", + "value": "NetworkWatchers" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PacketCaptures", + "limit": 10.0, + "name": { + "localizedValue": "Packet Captures", + "value": "PacketCaptures" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/DnsServersPerVirtualNetwork", + "limit": 9.0, + "name": { + "localizedValue": "DNS servers per Virtual Network", + "value": "DnsServersPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SubnetsPerVirtualNetwork", + "limit": 1000.0, + "name": { + "localizedValue": "Subnets per Virtual Network", + "value": "SubnetsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/IPConfigurationsPerVirtualNetwork", + "limit": 4096.0, + "name": { + "localizedValue": "IP Configurations per Virtual Network", + "value": "IPConfigurationsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PeeringsPerVirtualNetwork", + "limit": 10.0, + "name": { + "localizedValue": "Peerings per Virtual Network", + "value": "PeeringsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecurityRulesPerNetworkSecurityGroup", + "limit": 200.0, + "name": { + "localizedValue": "Security rules per Network Security Group", + "value": "SecurityRulesPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup", + "limit": 2000.0, + "name": { + "localizedValue": "Security rules addresses or ports per Network Security Group", + "value": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerLoadBalancer", + "limit": 150.0, + "name": { + "localizedValue": "Inbound Rules per Load Balancer", + "value": "InboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/FrontendIPConfigurationPerLoadBalancer", + "limit": 10.0, + "name": { + "localizedValue": "Frontend IP Configurations per Load Balancer", + "value": "FrontendIPConfigurationPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/outboundRulesPerLoadBalancer", + "limit": 5.0, + "name": { + "localizedValue": "Outbound Rules per Load Balancer", + "value": "outboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RoutesPerRouteTable", + "limit": 100.0, + "name": { + "localizedValue": "Routes per Route Table", + "value": "RoutesPerRouteTable" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecondaryIPConfigurationsPerNetworkInterface", + "limit": 256.0, + "name": { + "localizedValue": "Secondary IP Configurations per Network Interface", + "value": "SecondaryIPConfigurationsPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerNetworkInterface", + "limit": 500.0, + "name": { + "localizedValue": "Inbound rules per Network Interface", + "value": "InboundRulesPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFilterRulesPerRouteFilter", + "limit": 1.0, + "name": { + "localizedValue": "Route filter rules per Route Filter", + "value": "RouteFilterRulesPerRouteFilter" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFiltersPerExpressRouteBgpPeering", + "limit": 1.0, + "name": { + "localizedValue": "Route filters per Express route BGP Peering", + "value": "RouteFiltersPerExpressRouteBgpPeering" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/UsageListSpacedLocation.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/UsageListSpacedLocation.json new file mode 100644 index 000000000000..181d5e0f627b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/UsageListSpacedLocation.json @@ -0,0 +1,335 @@ +{ + "parameters": { + "location": "West US", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": 12.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/VirtualNetworks", + "limit": 50.0, + "name": { + "localizedValue": "Virtual Networks", + "value": "VirtualNetworks" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/StaticPublicIPAddresses", + "limit": 20.0, + "name": { + "localizedValue": "Static Public IP Addresses", + "value": "StaticPublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkSecurityGroups", + "limit": 100.0, + "name": { + "localizedValue": "Network Security Groups", + "value": "NetworkSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 12.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PublicIPAddresses", + "limit": 60.0, + "name": { + "localizedValue": "Public IP Addresses", + "value": "PublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PublicIpPrefixes", + "limit": 2147483647.0, + "name": { + "localizedValue": "Public Ip Prefixes", + "value": "PublicIpPrefixes" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkInterfaces", + "limit": 24000.0, + "name": { + "localizedValue": "Network Interfaces", + "value": "NetworkInterfaces" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/LoadBalancers", + "limit": 100.0, + "name": { + "localizedValue": "Load Balancers", + "value": "LoadBalancers" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ApplicationGateways", + "limit": 50.0, + "name": { + "localizedValue": "Application Gateways", + "value": "ApplicationGateways" + }, + "unit": "Count" + }, + { + "currentValue": 5.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteTables", + "limit": 100.0, + "name": { + "localizedValue": "Route Tables", + "value": "RouteTables" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFilters", + "limit": 1000.0, + "name": { + "localizedValue": "Route Filters", + "value": "RouteFilters" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkWatchers", + "limit": 1.0, + "name": { + "localizedValue": "Network Watchers", + "value": "NetworkWatchers" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PacketCaptures", + "limit": 100.0, + "name": { + "localizedValue": "Packet Captures", + "value": "PacketCaptures" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ApplicationSecurityGroups", + "limit": 500.0, + "name": { + "localizedValue": "Application Security Groups.", + "value": "ApplicationSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/DdosProtectionPlans", + "limit": 1.0, + "name": { + "localizedValue": "DDoS Protection Plans.", + "value": "DdosProtectionPlans" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ServiceEndpointPolicies", + "limit": 200.0, + "name": { + "localizedValue": "Service Endpoint Policies", + "value": "ServiceEndpointPolicies" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkIntentPolicies", + "limit": 200.0, + "name": { + "localizedValue": "Network Intent Policies", + "value": "NetworkIntentPolicies" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/DnsServersPerVirtualNetwork", + "limit": 9.0, + "name": { + "localizedValue": "DNS servers per Virtual Network", + "value": "DnsServersPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SubnetsPerVirtualNetwork", + "limit": 1000.0, + "name": { + "localizedValue": "Subnets per Virtual Network", + "value": "SubnetsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/IPConfigurationsPerVirtualNetwork", + "limit": 16384.0, + "name": { + "localizedValue": "IP Configurations per Virtual Network", + "value": "IPConfigurationsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PeeringsPerVirtualNetwork", + "limit": 50.0, + "name": { + "localizedValue": "Peerings per Virtual Network", + "value": "PeeringsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRulesPerNetworkSecurityGroup", + "limit": 1000.0, + "name": { + "localizedValue": "Security rules per Network Security Group", + "value": "SecurityRulesPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRulesPerNetworkIntentPolicy", + "limit": 100.0, + "name": { + "localizedValue": "Security rules per Network Intent Policy", + "value": "SecurityRulesPerNetworkIntentPolicy" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RoutesPerNetworkIntentPolicy", + "limit": 100.0, + "name": { + "localizedValue": "Routes per Network Intent Policy", + "value": "RoutesPerNetworkIntentPolicy" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup", + "limit": 2000.0, + "name": { + "localizedValue": "Security rules addresses or ports per Network Security Group", + "value": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/InboundRulesPerLoadBalancer", + "limit": 150.0, + "name": { + "localizedValue": "Inbound Rules per Load Balancer", + "value": "InboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/FrontendIPConfigurationPerLoadBalancer", + "limit": 10.0, + "name": { + "localizedValue": "Frontend IP Configurations per Load Balancer", + "value": "FrontendIPConfigurationPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/OutboundRulesPerLoadBalancer", + "limit": 5.0, + "name": { + "localizedValue": "Outbound Rules per Load Balancer", + "value": "OutboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RoutesPerRouteTable", + "limit": 400.0, + "name": { + "localizedValue": "Routes per Route Table", + "value": "RoutesPerRouteTable" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecondaryIPConfigurationsPerNetworkInterface", + "limit": 256.0, + "name": { + "localizedValue": "Secondary IP Configurations per Network Interface", + "value": "SecondaryIPConfigurationsPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/InboundRulesPerNetworkInterface", + "limit": 500.0, + "name": { + "localizedValue": "Inbound rules per Network Interface", + "value": "InboundRulesPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFilterRulesPerRouteFilter", + "limit": 1.0, + "name": { + "localizedValue": "Route filter rules per Route Filter", + "value": "RouteFilterRulesPerRouteFilter" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFiltersPerExpressRouteBgpPeering", + "limit": 1.0, + "name": { + "localizedValue": "Route filters per Express route BGP Peering", + "value": "RouteFiltersPerExpressRouteBgpPeering" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualHubDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualHubDelete.json new file mode 100644 index 000000000000..7c4d485da10a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualHubDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { }, + "202": { }, + "204": { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualHubGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualHubGet.json new file mode 100644 index 000000000000..127eae6f4814 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualHubGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ ], + "addressPrefix": "10.10.1.0/24" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualHubList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualHubList.json new file mode 100644 index 000000000000..087feca00c66 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualHubList.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/virtualNetworks/SpokeVnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "addressPrefix": "10.10.1.0/24" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsofot.Network/virtualHubs/virtualHub2/hubVirtualNetworkConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsofot.Network/virtualNetworks/SpokeVnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "addressPrefix": "210.10.1.0/24" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualHubListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualHubListByResourceGroup.json new file mode 100644 index 000000000000..b3b22fefce49 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualHubListByResourceGroup.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/virtualNetworks/SpokeVnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "addressPrefix": "10.10.1.0/24" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsofot.Network/virtualHubs/virtualHub2/hubVirtualNetworkConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsofot.Network/virtualNetworks/SpokeVnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "addressPrefix": "210.10.1.0/24" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualHubPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualHubPut.json new file mode 100644 index 000000000000..58b4c6323b25 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualHubPut.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "virtualHubParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "addressPrefix": "10.168.0.0/24" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ ], + "addressPrefix": "10.168.0.0/24" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ ], + "addressPrefix": "10.168.0.0/24" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualHubUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualHubUpdateTags.json new file mode 100644 index 000000000000..d798d8ffc70c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualHubUpdateTags.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "virtualHubParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ ], + "addressPrefix": "10.168.0.0/24" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ ], + "addressPrefix": "10.168.0.0/24" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCheckIPAddressAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCheckIPAddressAvailability.json new file mode 100644 index 000000000000..02ab5f011b8b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCheckIPAddressAvailability.json @@ -0,0 +1,23 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "virtualNetworkName" : "test-vnet", + "ipAddress": "10.0.1.4" + }, + "responses" : { + "200" : { + "body" : { + "available": false, + "availableIPAddresses": [ + "10.0.1.5", + "10.0.1.6", + "10.0.1.7", + "10.0.1.8", + "10.0.1.9" + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCreate.json new file mode 100644 index 000000000000..dda138021f50 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCreate.json @@ -0,0 +1,56 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "virtualNetworkName" : "test-vnet", + "location": "westus", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + } + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "test-vnet", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type" : "Microsoft.Network/virtualNetworks", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "addressSpace" : { + "addressPrefixes" : [ + "10.0.0.0/16" + ] + }, + "subnets" : [], + "virtualNetworkPeerings" : [] + } + } + }, + "201" : { + "body" : { + "name" : "test-vnet", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type" : "Microsoft.Network/virtualNetworks", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "addressSpace" : { + "addressPrefixes" : [ + "10.0.0.0/16" + ] + }, + "subnets" : [], + "virtualNetworkPeerings" : [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json new file mode 100644 index 000000000000..4c1156614be1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json @@ -0,0 +1,120 @@ +{ + "parameters" : { + "api-version": "2018-06-01", + "subscriptionId" : "subid", + "resourceGroupName" : "vnetTest", + "virtualNetworkName" : "vnet1", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ] + } + } + ] + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "vnet1", + "id" : "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type" : "Microsoft.Network/virtualNetworks", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "addressSpace" : { + "addressPrefixes" : [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings" : [] + } + } + }, + "201" : { + "body" : { + "name" : "vnet1", + "id" : "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type" : "Microsoft.Network/virtualNetworks", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "addressSpace" : { + "addressPrefixes" : [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "serviceEndpointPolicies": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings" : [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCreateServiceEndpoints.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCreateServiceEndpoints.json new file mode 100644 index 000000000000..b44b2d6589e1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCreateServiceEndpoints.json @@ -0,0 +1,110 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "vnetTest", + "virtualNetworkName" : "vnet1", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ] + } + } + ] + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "vnet1", + "id" : "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type" : "Microsoft.Network/virtualNetworks", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "addressSpace" : { + "addressPrefixes" : [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings" : [] + } + } + }, + "201" : { + "body" : { + "name" : "vnet1", + "id" : "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type" : "Microsoft.Network/virtualNetworks", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "addressSpace" : { + "addressPrefixes" : [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings" : [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCreateSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCreateSubnet.json new file mode 100644 index 000000000000..397d41b925a0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCreateSubnet.json @@ -0,0 +1,81 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "virtualNetworkName" : "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24" + } + } + ] + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "test-vnet", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type" : "Microsoft.Network/virtualNetworks", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "addressSpace" : { + "addressPrefixes" : [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings" : [] + } + } + }, + "201" : { + "body" : { + "name" : "test-vnet", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type" : "Microsoft.Network/virtualNetworks", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "addressSpace" : { + "addressPrefixes" : [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings" : [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json new file mode 100644 index 000000000000..bbebd9546119 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json @@ -0,0 +1,90 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "virtualNetworkName" : "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.0.1.0/28" + ] + } + } + ] + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "test-vnet", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type" : "Microsoft.Network/virtualNetworks", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "addressSpace" : { + "addressPrefixes" : [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-2", + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.1.0.0/28" + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings" : [] + } + } + }, + "201" : { + "body" : { + "name" : "test-vnet", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type" : "Microsoft.Network/virtualNetworks", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "addressSpace" : { + "addressPrefixes" : [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-2", + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.0.1.0/28" + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings" : [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCreateSubnetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCreateSubnetWithDelegation.json new file mode 100644 index 000000000000..49fe367e2d41 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkCreateSubnetWithDelegation.json @@ -0,0 +1,113 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subId", + "resourceGroupName" : "rg1", + "virtualNetworkName" : "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "delegations": [ + { + "name": "myDelegation", + "properties": { + "serviceName": "Microsoft.Provider/resourceType" + } + } + ] + } + } + ] + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "test-vnet", + "id" : "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type" : "Microsoft.Network/virtualNetworks", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "addressSpace" : { + "addressPrefixes" : [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings" : [] + } + } + }, + "201" : { + "body" : { + "name" : "test-vnet", + "id" : "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type" : "Microsoft.Network/virtualNetworks", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "addressSpace" : { + "addressPrefixes" : [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings" : [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkDelete.json new file mode 100644 index 000000000000..46879ff9e983 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkDelete.json @@ -0,0 +1,13 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses" : { + "200" : { }, + "202" : { }, + "204" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionCreate.json new file mode 100644 index 000000000000..cb6b0a23fad7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionCreate.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName" : "connS2S", + "parameters": { + "properties": { + "virtualNetworkGateway1": { + "properties": { + "ipConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + } + }, + "name": "gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1" + } + ], + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + }, + "resourceGuid": "00000000-0000-0000-0000-000000000000" + }, + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "location": "centralus", + "tags": {} + }, + "localNetworkGateway2": { + "properties": { + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + }, + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "location": "centralus", + "tags": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "sharedKey": "Abc123", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [] + }, + "location": "centralus" + } + }, + "responses" : { + "201" : { + "body" : { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "sharedKey": "Abc123", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + }, + "200" : { + "body" : { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "sharedKey": "Abc123", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionDelete.json new file mode 100644 index 000000000000..48a59abcafa5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName" : "conn1" + }, + "responses" : { + "202" : { }, + "200" : { }, + "204" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionGet.json new file mode 100644 index 000000000000..2de401be024a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionGet.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName" : "connS2S" + }, + "responses" : { + "200" : { + "body" : { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "sharedKey": "Abc123", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "connectionStatus": "Connecting", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json new file mode 100644 index 000000000000..268f07258ff4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName" : "connS2S" + }, + "responses" : { + "200" : { + "body" : { + "value": "AzureAbc123" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json new file mode 100644 index 000000000000..683923689dae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName" : "conn1", + "parameters": { + "keyLength": 128 + } + }, + "responses" : { + "200" : { + "body" : { + "keyLength": 128 + } + }, + "202" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json new file mode 100644 index 000000000000..6d6c31833222 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName" : "connS2S", + "parameters": { + "value": "AzureAbc123" + } + }, + "responses" : { + "200" : { + "body" : { + "value": "AzureAbc123" + } + }, + "201" : { + "body" : { + "value": "AzureAbc123" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json new file mode 100644 index 000000000000..ac01786c86f3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json @@ -0,0 +1,49 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "virtualNetworkGatewayConnectionName": "test", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/test", + "type": "Microsoft.Network/connections", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw", + "properties": {} + }, + "connectionType": "IPsec", + "routingWeight": 0, + "sharedKey": "temp1234", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "connectionStatus": "Unknown", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionsList.json new file mode 100644 index 000000000000..4a1cbccc8074 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayConnectionsList.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "conn1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv1", + "routingWeight": 0, + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + }, + { + "name": "conn2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2", + "properties": {} + }, + "localNetworkGateway2": { + "properties": {}, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2" + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayDelete.json new file mode 100644 index 000000000000..3b25797cace1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName" : "vpngw" + }, + "responses" : { + "202" : { }, + "200" : { }, + "204" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json new file mode 100644 index 000000000000..b6fffc098a3b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName" : "vpngw", + "parameters": { + } + }, + "responses" : { + "200" : { + "body" : "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..f22a03fd6675 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName" : "vpngw", + "parameters": {} + }, + "responses" : { + "202" : { + }, + "200" : { + "body" : "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGet.json new file mode 100644 index 000000000000..aa3c2a761c85 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGet.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName" : "vpngw" + }, + "responses" : { + "200" : { + "body" : { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json new file mode 100644 index 000000000000..4ecd76844093 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName" : "vpngw", + "peer": "test" + }, + "responses" : { + "202" : { }, + "200" : { + "body" : { + + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json new file mode 100644 index 000000000000..f0349e3a0362 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName" : "vpngw" + }, + "responses" : { + "202" : { }, + "200" : { + "body" : { + + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..9f9613d826f8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName" : "vpngw" + }, + "responses" : { + "200" : { + "saLifeTimeSeconds": 86473, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup2", + "pfsGroup": "PFS2" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json new file mode 100644 index 000000000000..f69561355447 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName" : "vpngw" + }, + "responses" : { + "202" : { }, + "200" : { + "body" : "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayLearnedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayLearnedRoutes.json new file mode 100644 index 000000000000..c25ac968e309 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayLearnedRoutes.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName" : "vpngw" + }, + "responses" : { + "202" : {}, + "200" : { + "body" : { + + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayList.json new file mode 100644 index 000000000000..52fa5798e691 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayList.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "vpngw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "loc1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1/ipConfigurations/default", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw1-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.0.14", + "peerWeight": 0 + } + } + }, + { + "name": "vpngw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "loc2", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2/ipConfigurations/default", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw2-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.1.0.46", + "peerWeight": 0 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayReset.json new file mode 100644 index 000000000000..7eaa47fbd819 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayReset.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName" : "vpngw" + }, + "responses" : { + "202" : { }, + "200" : { + "body" : { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json new file mode 100644 index 000000000000..1440f4f511ec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName" : "vpngw" + }, + "responses" : { + "202" : { }, + "200" : { } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..9fa6fe72a610 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName" : "vpngw", + "vpnclientIpsecParams": { + "saLifeTimeSeconds": 86473, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup2", + "pfsGroup": "PFS2" + } + }, + "responses" : { + "202" : { + }, + "200" : { + "body" : "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json new file mode 100644 index 000000000000..f306f62d8801 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName" : "vpngw" + }, + "responses" : { + "200" : { + "body" : "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayUpdate.json new file mode 100644 index 000000000000..0d45738965ab --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayUpdate.json @@ -0,0 +1,152 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName" : "vpngw", + "parameters": { + "properties": { + "ipConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + } + }, + "name": "gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1" + } + ], + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + }, + "resourceGuid": "00000000-0000-0000-0000-000000000000" + }, + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "location": "centralus" + } + }, + "responses" : { + "200" : { + "body" : { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "SSTP", + "IkeV2" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + }, + "201" : { + "body" : { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "SSTP", + "IkeV2" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..64ef0bbb0793 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayUpdateTags.json @@ -0,0 +1,62 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "virtualNetworkGatewayName" : "vpngw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/default", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testpub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.0.254", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json new file mode 100644 index 000000000000..b42cac644d77 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName" : "vpngw", + "parameters": { + "vendor": "Cisco", + "deviceFamily": "ISR", + "firmwareVersion": "IOS 15.1 (Preview)" + } + }, + "responses" : { + "200" : { + "body" : "! Microsoft Corporation\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Sample VPN tunnel configuration template for IOS-based devices\r\n!\r\n! This configuration template applies to Cisco VPN devices running IOS 15.1 or beyond (ISR or ASR)\r\n!\r\n\r\n\r\n\t\t\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! ACL rules\r\n!\r\n! Some VPN devices require explicit ACL rules to allow cross-premises traffic:\r\n!\r\n! 1. Allow traffic between on premises address ranges and VNet address ranges\r\n! 2. Allow IKE traffic (UDP:500) between on premises VPN devices and Azure VPN gateway\r\n! 3. Allow IPsec traffic (Proto:ESP) between on premises VPN devices and Azure VPN gateway\r\n!\r\n\t\t\r\naccess-list 101 permit ip 10.1.0.0 0.0.255.255 10.0.0.0 0.0.255.255\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Internet Key Exchange (IKE) configuration\r\n!\r\n! This section specifies the authentication, encryption, hashing, and Diffie-Hellman group parameters for IKE\r\n! main mode or phase 1\r\n!\r\n\r\ncrypto ikev2 proposal SwaggerS2S-proposal\r\n encryption DES3\r\n integrity SHA384\r\n group DHGroup24\r\n lifetime 3600\r\n exit\r\n\r\ncrypto ikev2 policy SwaggerS2S-policy\r\n proposal SwaggerS2S-proposal\r\n exit\r\n\r\ncrypto ikev2 keyring SwaggerBranch-keyring\r\n\t\t\r\n\t\tpeer 52.173.199.254\r\n\t\taddress 52.173.199.254\r\n\t\tpre-shared-key lALEHuppeopJmA94exRNiRr2QzuZ6lOsvzu5IlJUEA6LthbTc8g5MTT86MCsGNMzGkTAaLuLnEJoD1Cn4cIlr94qKZm9drsgllzWvsPNezS71stAkaW1Bb7h6GBnDlDP\r\n exit\r\n\r\ncrypto ikev2 profile SwaggerS2S-profile\r\n match address local 10.3.0.0\r\n\tmatch identity remote address 52.173.199.254 255.255.255.255\r\n\t\t\r\n authentication remote pre-share\r\n authentication local pre-share\r\n keyring SwaggerBranch-keyring\r\n exit\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! IPsec configuration\r\n!\r\n! This section specifies encryption, authentication, tunnel mode properties for the Phase 2 negotiation\r\n!\r\ncrypto ipsec transform-set SwaggerS2S-TransformSet DES3 DES3\r\n mode tunnel\r\n exit\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Crypto map configuration\r\n!\r\n! This section defines a crypto profile that binds the cross-premises network traffic to the IPsec and IKE\r\n! policy profiles for this connection. Then defines the VTI (virtual tunnel interface) with the crypto\r\n! profile. A random interface number (tunnel 1) was used with a random link local address (169.254.0.1/28)\r\n! for the tunnel interface. If either selection is already used in the VPN device, please select another\r\n! interface number or address. The only requirement is that they must not overlap with another interface\r\n! on the same VPN device.\r\n!\r\ncrypto ipsec profile SwaggerS2S-IPsecProfile\r\n set transform-set SwaggerS2S-TransformSet\r\n set ikev2-profile SwaggerS2S-profile\r\n set pfs None\r\n set security-association lifetime 3600\r\n exit\r\n\r\n\r\nint tunnel 52.173.199.254\r\n ip address 169.254.0.1 255.255.255.252\r\n ip tcp adjust-mss 1350\r\n tunnel source 10.3.0.0\r\n tunnel mode ipsec ipv4\r\n tunnel destination 52.173.199.254\r\n tunnel protection ipsec profile SwaggerS2S-IPsecProfile\r\n exit\r\n\r\n\tip route 10.0.0.0 255.255.0.0 tunnel 52.173.199.254 " + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewaysListConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewaysListConnections.json new file mode 100644 index 000000000000..16ce0aa76f75 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGatewaysListConnections.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "virtualNetworkGatewayName": "test-vpn-gateway-1", + "api-version": "2018-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-vpn-connection", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/connections/test-vpn-connection", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "type": "Microsoft.Network/connections", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-1" + }, + "virtualNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/testrg-2/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-2" + }, + "connectionType": "Vnet2Vnet", + "routingWeight": 22, + "enableBgp": true, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGet.json new file mode 100644 index 000000000000..420e98541d7a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGet.json @@ -0,0 +1,40 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "virtualNetworkName" : "test-vnet" + }, + "responses" : { + "200" : { + "body" : { + "name" : "test-vnet", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type" : "Microsoft.Network/virtualNetworks", + "location" : "westus", + "properties" : { + "provisioningState" : "Succeeded", + "addressSpace" : { + "addressPrefixes" : [ + "10.0.0.0/16" + ] + }, + "subnets" : [{ + "name" : "subnet1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "properties" : { + "provisioningState" : "Succeeded", + "addressPrefix" : "10.0.1.0/24", + "ipConfigurations" : [{ + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe" + } + ] + } + } + ], + "virtualNetworkPeerings" : [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGetWithServiceAssociationLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGetWithServiceAssociationLink.json new file mode 100644 index 000000000000..b087b5361a06 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGetWithServiceAssociationLink.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.214.0/24", + "ipConfigurationProfiles": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1" + } + ], + "serviceAssociationLinks": [ + { + "name": "serviceAssociationLink1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/serviceAssociationLinks/serviceAssociationLink1", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.Provider/resourceType" + } + } + ], + "serviceEndpoints": [], + "delegations": [ + { + "name": "aciDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/aciDelegation", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/virtualNetworks/subnets/action" + ] + } + } + ] + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGetWithSubnetDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGetWithSubnetDelegation.json new file mode 100644 index 000000000000..bda088f91756 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkGetWithSubnetDelegation.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [{ + "name": "subnet1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.1.0/24", + "ipConfigurations": [{ + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe" + }], + "delegations": [{ + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + }], + "purpose": "" + } + }], + "virtualNetworkPeerings": [] + } + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkList.json new file mode 100644 index 000000000000..5637417cadb1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkList.json @@ -0,0 +1,64 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1", + "name": "vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/8" + ] + }, + "dhcpOptions": { + "dnsServers": [] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2", + "name": "vnet2", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "dhcpOptions": { + "dnsServers": [ + "8.8.8.8" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkListAll.json new file mode 100644 index 000000000000..84384581b2c8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkListAll.json @@ -0,0 +1,63 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1", + "name": "vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/8" + ] + }, + "dhcpOptions": { + "dnsServers": [] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2", + "name": "vnet2", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "dhcpOptions": { + "dnsServers": [ + "8.8.8.8" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkListUsage.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkListUsage.json new file mode 100644 index 000000000000..afb6cf19c476 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkListUsage.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "virtualNetworkName": "vnetName", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": -1.0, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetName/subnets/GatewaySubnet", + "limit": -1.0, + "name": { + "localizedValue": "Subnet size and usage", + "value": "SubnetSpace" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetName/subnets/newSubnet", + "limit": 3.0, + "name": { + "localizedValue": "Subnet size and usage", + "value": "SubnetSpace" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkPeeringCreate.json new file mode 100644 index 000000000000..865700484881 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkPeeringCreate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "VirtualNetworkPeeringParameters": { + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkPeeringDelete.json new file mode 100644 index 000000000000..6aa45e4f71cc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { }, + "202": { }, + "204": { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkPeeringGet.json new file mode 100644 index 000000000000..3e16ff4b818c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkPeeringGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkPeeringList.json new file mode 100644 index 000000000000..bbb356e866c7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkPeeringList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer2", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": false, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet3" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "13.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkTapCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkTapCreate.json new file mode 100644 index 000000000000..412037578053 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkTapCreate.json @@ -0,0 +1,62 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap", + "parameters": { + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/ipconfig1" + } + }, + "location": "centraluseuap" + } + }, + "responses" : { + "200" : { + "body" : { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + }, + "201" : { + "body" : { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkTapDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkTapDelete.json new file mode 100644 index 000000000000..65341baabdff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkTapDelete.json @@ -0,0 +1,13 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap" + }, + "responses" : { + "200" : { }, + "202" : { }, + "204" : { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkTapGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkTapGet.json new file mode 100644 index 000000000000..c000b092304c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkTapGet.json @@ -0,0 +1,32 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "tapName" : "testvtap" + }, + "responses" : { + "200" : { + "body" : { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkTapList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkTapList.json new file mode 100644 index 000000000000..05e1d5710eff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkTapList.json @@ -0,0 +1,55 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + }, + { + "name": "testvtap2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap2", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface3/tapConfigurations/testtapConfiguration" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkTapListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkTapListAll.json new file mode 100644 index 000000000000..f8297a483bca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkTapListAll.json @@ -0,0 +1,54 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + }, + { + "name": "testvtap2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap2", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface3/tapConfigurations/testtapConfiguration" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkTapUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkTapUpdateTags.json new file mode 100644 index 000000000000..56dd4ef43473 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkTapUpdateTags.json @@ -0,0 +1,40 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap", + "tapParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "test-vtap", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/test-vtap", + "location" : "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties" : { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + }, + "type" : "Microsoft.Network/virtualNetworkTaps" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkUpdateTags.json new file mode 100644 index 000000000000..025960f6b498 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualNetworkUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters" : { + "api-version": "2018-12-01", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "virtualNetworkName" : "test-vnet", + "location": "westus", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses" : { + "200" : { + "body" : { + "name" : "test-vnet", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type" : "Microsoft.Network/virtualNetworks", + "location" : "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties" : { + "provisioningState" : "Succeeded", + "addressSpace" : { + "addressPrefixes" : [ + "10.0.0.0/16" + ] + }, + "subnets" : [], + "virtualNetworkPeerings" : [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWANDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWANDelete.json new file mode 100644 index 000000000000..f2b809e34d82 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWANDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "VirtualWANName": "virtualWan1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { }, + "202": { }, + "204": { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWANGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWANGet.json new file mode 100644 index 000000000000..d48ffe878159 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWANGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWANList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWANList.json new file mode 100644 index 000000000000..dfdf445ae0ef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWANList.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualWANs/wan2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "wan2", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWANListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWANListByResourceGroup.json new file mode 100644 index 000000000000..ec7852eb9aad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWANListByResourceGroup.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "wan2", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub4" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite4" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWANPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWANPut.json new file mode 100644 index 000000000000..d876c3541ee4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWANPut.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "WANParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "disableVpnEncryption": false + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWANUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWANUpdateTags.json new file mode 100644 index 000000000000..96563aa0bcb7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWANUpdateTags.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "WANParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWanSupportedSecurityProviders.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWanSupportedSecurityProviders.json new file mode 100644 index 000000000000..47315d082b19 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VirtualWanSupportedSecurityProviders.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "virtualWANName": "wan1" + }, + "responses": { + "200": { + "description": "Request successful.", + "body": { + "supportedProviders": [ + { + "name": "Zscaler", + "url": "", + "type": "External" + }, + { + "name": "AzureFirewall", + "url": "", + "type": "Native" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssNetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssNetworkInterfaceGet.json new file mode 100644 index 000000000000..de8b2d4a7ec5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssNetworkInterfaceGet.json @@ -0,0 +1,65 @@ +{ + "parameters" : { + "api-version": "2017-03-30", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "networkInterfaceName" : "nic1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "1" + }, + "responses" : { + "200" : { + "body" : { + "name" : "nic1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties" : { + "provisioningState" : "Succeeded", + "ipConfigurations" : [ + { + "name" : "ip1", + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties" : { + "provisioningState" : "Succeeded", + "privateIPAddress" : "10.0.0.5", + "privateIPAllocationMethod" : "Dynamic", + "publicIPAddress" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary" : true, + "privateIPAddressVersion" : "IPv4", + "loadBalancerBackendAddressPools" : [ + { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules" : [ + { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings" : { + "dnsServers" : [], + "appliedDnsServers" : [], + "internalDomainNameSuffix" : "dns.cdmx.internal.cloudapp.net" + }, + "macAddress" : "00-00-00-00-00-00", + "enableAcceleratedNetworking" : false, + "enableIPForwarding" : false, + "networkSecurityGroup" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary" : true, + "virtualMachine" : { + "id" : "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssNetworkInterfaceIpConfigGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssNetworkInterfaceIpConfigGet.json new file mode 100644 index 000000000000..445dae399b7d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssNetworkInterfaceIpConfigGet.json @@ -0,0 +1,39 @@ +{ + "parameters" : { + "api-version": "2017-03-30", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "2", + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses" : { + "200" : { + "body" : { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.6", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssNetworkInterfaceIpConfigList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssNetworkInterfaceIpConfigList.json new file mode 100644 index 000000000000..1758de1ee444 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssNetworkInterfaceIpConfigList.json @@ -0,0 +1,42 @@ +{ + "parameters" : { + "api-version": "2017-03-30", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "2", + "networkInterfaceName": "nic1" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.6", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssNetworkInterfaceList.json new file mode 100644 index 000000000000..aa3be3aba845 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssNetworkInterfaceList.json @@ -0,0 +1,118 @@ +{ + "parameters" : { + "api-version": "2017-03-30", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "virtualMachineScaleSetName": "vmss1" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.0" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0" + } + } + }, + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssPublicIpGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssPublicIpGet.json new file mode 100644 index 000000000000..3601aa554519 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssPublicIpGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2017-03-30", + "subscriptionId": "subid", + "virtualmachineIndex": 1, + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1", + "publicIpAddressName": "pub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssPublicIpListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssPublicIpListAll.json new file mode 100644 index 000000000000..2371537ba644 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssPublicIpListAll.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2017-03-30", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm3.testvmssacc", + "fqdn": "vm3.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.118.216", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssVmNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssVmNetworkInterfaceList.json new file mode 100644 index 000000000000..e44ecaa437fd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssVmNetworkInterfaceList.json @@ -0,0 +1,68 @@ +{ + "parameters" : { + "api-version": "2017-03-30", + "subscriptionId" : "subid", + "resourceGroupName" : "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "1" + }, + "responses" : { + "200" : { + "body" : { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssVmPublicIpList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssVmPublicIpList.json new file mode 100644 index 000000000000..5df78ff0a7d1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VmssVmPublicIpList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2017-03-30", + "subscriptionId": "subid", + "virtualmachineIndex": 1, + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnConnectionDelete.json new file mode 100644 index 000000000000..63bcfd74cafc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { }, + "202": { }, + "204": { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnConnectionGet.json new file mode 100644 index 000000000000..0e049206857f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnConnectionGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "vpnConnectionProtocolType": "IKEv2", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [ ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnConnectionList.json new file mode 100644 index 000000000000..927e13c95915 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnConnectionList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2018-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "vpnConnectionProtocolType": "IKEv1", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [ ] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnConnectionPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnConnectionPut.json new file mode 100644 index 000000000000..402eb0ebdd2e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnConnectionPut.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "VpnConnectionParameters": { + "properties": { + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "vpnConnectionProtocolType" : "IKEv1", + "sharedKey": "key" + } + } + }, + "responses": { + "200": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "vpnConnectionProtocolType": "IKEv1", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [ ] + } + }, + "201": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "vpnConnectionProtocolType": "IKEv1", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [ ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnGatewayDelete.json new file mode 100644 index 000000000000..fa3819b47601 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { }, + "202": { }, + "204": { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnGatewayGet.json new file mode 100644 index 000000000000..c06809f6fdf3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnGatewayGet.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [ ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnGatewayList.json new file mode 100644 index 000000000000..4d32341f1736 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnGatewayList.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [ ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + }, + { + "name": "gateway2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2/vpnConnections/vpnConnection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [ ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..d8a922440a21 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnGatewayListByResourceGroup.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [ ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + }, + { + "name": "gateway2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway2/vpnConnections/vpnConnection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [ ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnGatewayPut.json new file mode 100644 index 000000000000..38909af2114f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnGatewayPut.json @@ -0,0 +1,115 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "vpnGatewayParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "properties": { + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "sharedKey": "key" + } + } + ], + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + }, + "responses": { + "200": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [ ] + } + } + ], + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + }, + "201": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [ ] + } + } + ], + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnGatewayUpdateTags.json new file mode 100644 index 000000000000..964388db1cf6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnGatewayUpdateTags.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "vpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidthInMbps": 100, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [ ] + } + } + ], + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + }, + "policies": { + "allowBranchToBranchTraffic": true, + "allowVnetToVnetTraffic": false + } + } + }, + "201": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidthInMbps": 100, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [ ] + } + } + ], + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + }, + "policies": { + "allowBranchToBranchTraffic": true, + "allowVnetToVnetTraffic": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSiteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSiteDelete.json new file mode 100644 index 000000000000..e1275cd898c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSiteDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { }, + "202": { }, + "204": { } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSiteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSiteGet.json new file mode 100644 index 000000000000..7c625dd7f9d6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSiteGet.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.0.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + } + } + } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSiteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSiteList.json new file mode 100644 index 000000000000..da7b38046b32 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSiteList.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.0.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "vpnSite2", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSiteListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSiteListByResourceGroup.json new file mode 100644 index 000000000000..49847f415d22 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSiteListByResourceGroup.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2018-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.0.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite2", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSitePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSitePut.json new file mode 100644 index 000000000000..0e863ac012db --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSitePut.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "VpnSiteParameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/VirtualWans/virtualWan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.0.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/VirtualWans/virtualWan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/VirtualWans/virtualWan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSiteUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSiteUpdateTags.json new file mode 100644 index 000000000000..91cb9a84671b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSiteUpdateTags.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "subscriptionId": "subid", + "VpnSiteParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.0.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.0.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSitesConfigurationDownload.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSitesConfigurationDownload.json new file mode 100644 index 000000000000..69ecba67948f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/examples/VpnSitesConfigurationDownload.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2018-12-01", + "virtualWANName": "wan1", + "request": { + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/abc" + ], + "outputBlobSasUrl": "https://blobcortextesturl.blob.core.windows.net/folderforconfig/vpnFile?sp=rw&se=2018-01-10T03%3A42%3A04Z&sv=2017-04-17&sig=WvXrT5bDmDFfgHs%2Brz%2BjAu123eRCNE9BO0eQYcPDT7pY%3D&sr=b" + } + }, + "responses": { + "200": { + "description": "Request successful. Follow the location header for sas-url to output blob." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/expressRouteCircuit.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/expressRouteCircuit.json new file mode 100644 index 000000000000..9d1ef2df362f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/expressRouteCircuit.json @@ -0,0 +1,2019 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations/{authorizationName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_Delete", + "description": "Deletes the specified authorization from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete ExpressRouteCircuit Authorization": { "$ref": "./examples/ExpressRouteCircuitAuthorizationDelete.json" } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_Get", + "description": "Gets the specified authorization from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit Authorization": { "$ref": "./examples/ExpressRouteCircuitAuthorizationGet.json" } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_CreateOrUpdate", + "description": "Creates or updates an authorization in the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "name": "authorizationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "Parameters supplied to the create or update express route circuit authorization operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create ExpressRouteCircuit Authorization": { "$ref": "./examples/ExpressRouteCircuitAuthorizationCreate.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations": { + "get": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_List", + "description": "Gets all authorizations in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitAuthorization resources.", + "schema": { + "$ref": "#/definitions/AuthorizationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Authorization": { "$ref": "./examples/ExpressRouteCircuitAuthorizationList.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_Delete", + "description": "Deletes the specified peering from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete ExpressRouteCircuit Peerings": { "$ref": "./examples/ExpressRouteCircuitPeeringDelete.json" } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_Get", + "description": "Gets the specified peering for the express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit Peering": { "$ref": "./examples/ExpressRouteCircuitPeeringGet.json" } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified express route circuits.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "peeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "Parameters supplied to the create or update express route circuit peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create ExpressRouteCircuit Peerings": { "$ref": "./examples/ExpressRouteCircuitPeeringCreate.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings": { + "get": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_List", + "description": "Gets all peerings in a specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitPeering resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples":{ + "List ExpressRouteCircuit Peerings": { "$ref": "./examples/ExpressRouteCircuitPeeringList.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections/{connectionName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_Delete", + "description": "Deletes the specified Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit": { "$ref": "./examples/ExpressRouteCircuitConnectionDelete.json" } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_Get", + "description": "Gets the specified Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Express Route Circuit Connection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + } + }, + "x-ms-examples": { + "ExpressRouteCircuitConnectionGet": { + "$ref": "./examples/ExpressRouteCircuitConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_CreateOrUpdate", + "description": "Creates or updates a Express Route Circuit Connection in the specified express route circuits.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "name": "expressRouteCircuitConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "Parameters supplied to the create or update express route circuit circuit connection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + } + }, + "x-ms-examples": { + "ExpressRouteCircuitConnectionCreate": { + "$ref": "./examples/ExpressRouteCircuitConnectionCreate.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections": { + "get": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_List", + "description": "Gets all global reach connections associated with a private peering in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitConnections resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnectionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Connection": { "$ref": "./examples/ExpressRouteCircuitConnectionList.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}": { + "delete": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_Delete", + "description": "Deletes the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. Sets 'Disabling' provisioningState until the operation completes. Returns an operation URI that can be queried to find the current state of the operation." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete ExpressRouteCircuit": { "$ref": "./examples/ExpressRouteCircuitDelete.json" } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_Get", + "description": "Gets information about the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit": { "$ref": "./examples/ExpressRouteCircuitGet.json" } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_CreateOrUpdate", + "description": "Creates or updates an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + }, + "description": "Parameters supplied to the create or update express route circuit operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create ExpressRouteCircuit": { "$ref": "./examples/ExpressRouteCircuitCreate.json" } + } + }, + "patch": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_UpdateTags", + "description": "Updates an express route circuit tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update express route circuit tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + } + }, + "x-ms-examples": { + "Update Express Route Circuit Tags": { + "$ref": "./examples/ExpressRouteCircuitUpdateTags.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/arpTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitArpTable" + ], + "operationId": "ExpressRouteCircuits_ListArpTable", + "description": "Gets the currently advertised ARP table associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsArpTable resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsArpTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "List ARP Table": { "$ref": "./examples/ExpressRouteCircuitARPTableList.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitRoutesTable" + ], + "operationId": "ExpressRouteCircuits_ListRoutesTable", + "description": "Gets the currently advertised routes table associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsRouteTable resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsRoutesTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "List Route Tables": { "$ref": "./examples/ExpressRouteCircuitRouteTableList.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTablesSummary/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitRoutesTableSummary" + ], + "operationId": "ExpressRouteCircuits_ListRoutesTableSummary", + "description": "Gets the currently advertised routes table summary associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsRoutesTableSummary resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsRoutesTableSummaryListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "List Route Table Summary": { "$ref": "./examples/ExpressRouteCircuitRouteTableSummaryList.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/stats": { + "get": { + "tags": [ + "ExpressRouteCircuitStats" + ], + "operationId": "ExpressRouteCircuits_GetStats", + "description": "Gets all the stats from an express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitStats resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitStats" + } + } + }, + "x-ms-examples": { + "Get ExpressRoute Circuit Traffic Stats": { "$ref": "./examples/ExpressRouteCircuitStats.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/stats": { + "get": { + "tags": [ + "ExpressRouteCircuitStats" + ], + "operationId": "ExpressRouteCircuits_GetPeeringStats", + "description": "Gets all stats from an express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitStats resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitStats" + } + } + }, + "x-ms-examples": { + "Get ExpressRoute Circuit Peering Traffic Stats": { "$ref": "./examples/ExpressRouteCircuitPeeringStats.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits": { + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_List", + "description": "Gets all the express route circuits in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuits in a resource group": { "$ref": "./examples/ExpressRouteCircuitListByResourceGroup.json" } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteCircuits": { + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_ListAll", + "description": "Gets all the express route circuits in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuit resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuits in a subscription": { "$ref": "./examples/ExpressRouteCircuitListBySubscription.json" } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteServiceProviders": { + "get": { + "tags": [ + "ExpressRouteServiceProviders" + ], + "operationId": "ExpressRouteServiceProviders_List", + "description": "Gets all the available express route service providers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteServiceProdiver resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteServiceProviderListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRoute providers": { "$ref": "./examples/ExpressRouteProviderList.json" } + } + } + } + }, + "definitions": { + "AuthorizationPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorization key." + }, + "authorizationUseStatus": { + "type": "string", + "description": "AuthorizationUseStatus. Possible values are: 'Available' and 'InUse'.", + "enum": [ + "Available", + "InUse" + ], + "x-ms-enum": { + "name": "AuthorizationUseStatus", + "modelAsString": true + } + }, + "provisioningState": { + "type": "string", + "description": "Gets the provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + } + }, + "ExpressRouteCircuitAuthorization": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AuthorizationPropertiesFormat" + }, + "name": { + "type": "string", + "description": "Gets name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Authorization in an ExpressRouteCircuit resource." + }, + "AuthorizationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "The authorizations in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListAuthorizations API service call retrieves all authorizations that belongs to an ExpressRouteCircuit." + }, + "ExpressRouteCircuitPeeringConfig": { + "properties": { + "advertisedPublicPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The reference of AdvertisedPublicPrefixes." + }, + "advertisedCommunities": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The communities of bgp peering. Spepcified for microsoft peering" + }, + "advertisedPublicPrefixesState": { + "type": "string", + "description": "AdvertisedPublicPrefixState of the Peering resource. Possible values are 'NotConfigured', 'Configuring', 'Configured', and 'ValidationNeeded'.", + "enum": [ + "NotConfigured", + "Configuring", + "Configured", + "ValidationNeeded" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitPeeringAdvertisedPublicPrefixState", + "modelAsString": true + } + }, + "legacyMode": { + "type": "integer", + "format": "int32", + "description": "The legacy mode of the peering." + }, + "customerASN": { + "type": "integer", + "format": "int32", + "description": "The CustomerASN of the peering." + }, + "routingRegistryName": { + "type": "string", + "description": "The RoutingRegistryName of the configuration." + } + }, + "description": "Specifies the peering configuration." + }, + "Ipv6ExpressRouteCircuitPeeringConfig": { + "properties": { + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "microsoftPeeringConfig": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "routeFilter": { + "$ref": "./routeFilter.json#/definitions/RouteFilter", + "description": "The reference of the RouteFilter resource." + }, + "state": { + "type": "string", + "description": "The state of peering. Possible values are: 'Disabled' and 'Enabled'", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitPeeringState", + "modelAsString": true + } + } + }, + "description": "Contains IPv6 peering config." + }, + "ExpressRouteCircuitStats": { + "properties": { + "primarybytesIn": { + "type": "integer", + "format": "int64", + "description": "Gets BytesIn of the peering." + }, + "primarybytesOut": { + "type": "integer", + "format": "int64", + "description": "Gets BytesOut of the peering." + }, + "secondarybytesIn": { + "type": "integer", + "format": "int64", + "description": "Gets BytesIn of the peering." + }, + "secondarybytesOut": { + "type": "integer", + "format": "int64", + "description": "Gets BytesOut of the peering." + } + }, + "description": "Contains stats associated with the peering." + }, + "ExpressRouteCircuitPeeringPropertiesFormat": { + "properties": { + "peeringType": { + "$ref": "#/definitions/ExpressRoutePeeringType", + "description": "The peering type." + }, + "state": { + "$ref": "#/definitions/ExpressRoutePeeringState", + "description": "The peering state." + }, + "azureASN": { + "type": "integer", + "format": "int32", + "description": "The Azure ASN." + }, + "peerASN": { + "type": "integer", + "format": "int64", + "minimum": 1, + "maximum": 4294967295, + "description": "The peer ASN." + }, + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "primaryAzurePort": { + "type": "string", + "description": "The primary port." + }, + "secondaryAzurePort": { + "type": "string", + "description": "The secondary port." + }, + "sharedKey": { + "type": "string", + "description": "The shared key." + }, + "vlanId": { + "type": "integer", + "format": "int32", + "description": "The VLAN ID." + }, + "microsoftPeeringConfig": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "stats": { + "$ref": "#/definitions/ExpressRouteCircuitStats", + "description": "Gets peering stats." + }, + "provisioningState": { + "type": "string", + "description": "Gets the provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "lastModifiedBy": { + "type": "string", + "description": "Gets whether the provider or the customer last modified the peering." + }, + "routeFilter": { + "$ref": "./routeFilter.json#/definitions/RouteFilter", + "description": "The reference of the RouteFilter resource." + }, + "ipv6PeeringConfig": { + "$ref": "#/definitions/Ipv6ExpressRouteCircuitPeeringConfig", + "description": "The IPv6 peering configuration." + }, + "expressRouteConnection" : { + "$ref": "./expressRouteGateway.json#/definitions/ExpressRouteConnectionId", + "description": "The ExpressRoute connection." + }, + "connections": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "The list of circuit connections associated with Azure Private Peering for this circuit." + } + } + }, + "ExpressRouteCircuitPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitPeeringPropertiesFormat" + }, + "name": { + "type": "string", + "description": "Gets name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peering in an ExpressRouteCircuit resource." + }, + "ExpressRouteCircuitPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "The peerings in an express route circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeering API service call retrieves all peerings that belong to an ExpressRouteCircuit." + }, + "ExpressRoutePeeringType": { + "type": "string", + "description": "The PeeringType. Possible values are: 'AzurePublicPeering', 'AzurePrivatePeering', and 'MicrosoftPeering'.", + "enum": [ + "AzurePublicPeering", + "AzurePrivatePeering", + "MicrosoftPeering" + ], + "x-ms-enum": { + "name": "ExpressRoutePeeringType", + "modelAsString": true + } + }, + "ExpressRoutePeeringState": { + "type": "string", + "description": "The state of peering. Possible values are: 'Disabled' and 'Enabled'", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRoutePeeringState", + "modelAsString": true + } + }, + "ExpressRouteCircuitConnectionPropertiesFormat": { + "properties": { + "expressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the circuit initiating connection." + }, + "peerExpressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the peered circuit." + }, + "addressPrefix": { + "type": "string", + "description": "/29 IP address space to carve out Customer addresses for tunnels." + }, + "authorizationKey": { + "type": "string", + "description": "The authorization key." + }, + "circuitConnectionStatus": { + "type": "string", + "description": "Express Route Circuit Connection State. Possible values are: 'Connected' and 'Disconnected'.", + "enum": [ + "Connected", + "Connecting", + "Disconnected" + ], + "readOnly": true, + "x-ms-enum": { + "name": "circuitConnectionStatus", + "modelAsString": true + } + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Provisioning state of the circuit connection resource. Possible values are: 'Succeded', 'Updating', 'Deleting', and 'Failed'." + } + } + }, + "ExpressRouteCircuitConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitConnectionPropertiesFormat" + }, + "name": { + "type": "string", + "description": "Gets name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Express Route Circuit Connection in an ExpressRouteCircuitPeering resource." + }, + "ExpressRouteCircuitConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "The global reach connection associated with Private Peering in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListConnections API service call retrieves all global reach connections that belongs to a Private Peering for an ExpressRouteCircuit." + }, + "ExpressRouteCircuitSku": { + "properties": { + "name": { + "type": "string", + "description": "The name of the SKU." + }, + "tier": { + "type": "string", + "description": "The tier of the SKU. Possible values are 'Standard', 'Premium' or 'Basic'.", + "enum": [ + "Standard", + "Premium", + "Basic" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitSkuTier", + "modelAsString": true + } + }, + "family": { + "type": "string", + "description": "The family of the SKU. Possible values are: 'UnlimitedData' and 'MeteredData'.", + "enum": [ + "UnlimitedData", + "MeteredData" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitSkuFamily", + "modelAsString": true + } + } + }, + "description": "Contains SKU in an ExpressRouteCircuit." + }, + "ExpressRouteCircuitServiceProviderProperties": { + "properties": { + "serviceProviderName": { + "type": "string", + "description": "The serviceProviderName." + }, + "peeringLocation": { + "type": "string", + "description": "The peering location." + }, + "bandwidthInMbps": { + "type": "integer", + "format": "int32", + "description": "The BandwidthInMbps." + } + }, + "description": "Contains ServiceProviderProperties in an ExpressRouteCircuit." + }, + "ExpressRouteCircuitPropertiesFormat": { + "properties": { + "allowClassicOperations": { + "type": "boolean", + "description": "Allow classic operations" + }, + "circuitProvisioningState": { + "type": "string", + "description": "The CircuitProvisioningState state of the resource." + }, + "serviceProviderProvisioningState": { + "type": "string", + "description": "The ServiceProviderProvisioningState state of the resource. Possible values are 'NotProvisioned', 'Provisioning', 'Provisioned', and 'Deprovisioning'.", + "enum": [ + "NotProvisioned", + "Provisioning", + "Provisioned", + "Deprovisioning" + ], + "x-ms-enum": { + "name": "ServiceProviderProvisioningState", + "modelAsString": true + } + }, + "authorizations": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "The list of authorizations." + }, + "peerings": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "The list of peerings." + }, + "serviceKey": { + "type": "string", + "description": "The ServiceKey." + }, + "serviceProviderNotes": { + "type": "string", + "description": "The ServiceProviderNotes." + }, + "serviceProviderProperties": { + "$ref": "#/definitions/ExpressRouteCircuitServiceProviderProperties", + "description": "The ServiceProviderProperties." + }, + "expressRoutePort": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the ExpressRoutePort resource when the circuit is provisioned on an ExpressRoutePort resource." + }, + "bandwidthInGbps": { + "type": "number", + "description": "The bandwidth of the circuit when the circuit is provisioned on an ExpressRoutePort resource." + }, + "stag": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The identifier of the circuit traffic. Outer tag for QinQ encapsulation." + }, + "provisioningState": { + "type": "string", + "description": "Gets the provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "allowGlobalReach": { + "type": "boolean", + "description": "Flag to enable Global Reach on the circuit." + } + }, + "description": "Properties of ExpressRouteCircuit." + }, + "ExpressRouteCircuit": { + "properties": { + "sku": { + "$ref": "#/definitions/ExpressRouteCircuitSku", + "description": "The SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitPropertiesFormat" + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRouteCircuit resource" + }, + "ExpressRouteCircuitArpTable": { + "properties": { + "age": { + "type": "integer", + "format": "int32", + "description": "Entry age in minutes" + }, + "interface": { + "type": "string", + "description": "Interface address" + }, + "ipAddress": { + "type": "string", + "description": "The IP address." + }, + "macAddress": { + "type": "string", + "description": "The MAC address." + } + }, + "description": "The ARP table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsArpTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitArpTable" + }, + "description": "Gets list of the ARP table." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListArpTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitRoutesTable": { + "properties": { + "network": { + "type": "string", + "description": "IP address of a network entity" + }, + "nextHop": { + "type": "string", + "description": "NextHop address" + }, + "locPrf": { + "type": "string", + "description": "Local preference value as set with the set local-preference route-map configuration command" + }, + "weight": { + "type": "integer", + "format": "int32", + "description": "Route Weight." + }, + "path": { + "type": "string", + "description": "Autonomous system paths to the destination network." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit" + }, + "ExpressRouteCircuitsRoutesTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitRoutesTable" + }, + "description": "The list of routes table." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitRoutesTableSummary": { + "properties": { + "neighbor": { + "type": "string", + "description": "IP address of the neighbor." + }, + "v": { + "type": "integer", + "format": "int32", + "description": "BGP version number spoken to the neighbor." + }, + "as": { + "type": "integer", + "format": "int32", + "description": "Autonomous system number." + }, + "upDown": { + "type": "string", + "description": "The length of time that the BGP session has been in the Established state, or the current status if not in the Established state." + }, + "statePfxRcd": { + "type": "string", + "description": "Current state of the BGP session, and the number of prefixes that have been received from a neighbor or peer group." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsRoutesTableSummaryListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitRoutesTableSummary" + }, + "description": "A list of the routes table." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuit" + }, + "description": "A list of ExpressRouteCircuits in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListExpressRouteCircuit API service call." + }, + "ExpressRouteServiceProviderBandwidthsOffered": { + "properties": { + "offerName": { + "type": "string", + "description": "The OfferName." + }, + "valueInMbps": { + "type": "integer", + "format": "int32", + "description": "The ValueInMbps." + } + }, + "description": "Contains bandwidths offered in ExpressRouteServiceProvider resources." + }, + "ExpressRouteServiceProviderPropertiesFormat": { + "properties": { + "peeringLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Get a list of peering locations." + }, + "bandwidthsOffered": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteServiceProviderBandwidthsOffered" + }, + "description": "Gets bandwidths offered." + }, + "provisioningState": { + "type": "string", + "description": "Gets the provisioning state of the resource." + } + }, + "description": "Properties of ExpressRouteServiceProvider." + }, + "ExpressRouteServiceProvider": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteServiceProviderPropertiesFormat" + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A ExpressRouteResourceProvider object." + }, + "ExpressRouteServiceProviderListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteServiceProvider" + }, + "description": "A list of ExpressRouteResourceProvider resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListExpressRouteServiceProvider API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/expressRouteCrossConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/expressRouteCrossConnection.json new file mode 100644 index 000000000000..fb785cd43287 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/expressRouteCrossConnection.json @@ -0,0 +1,922 @@ +{ + "swagger": "2.0", + "info": { + "title": "ExpressRouteCrossConnection REST APIs", + "description": "The Microsoft Azure ExpressRouteCrossConnection Resource Provider REST APIs describes the operations for the connectivity provider to provision ExpressRoute circuit, create and modify BGP peering entities and troubleshoot connectivity on customer's ExpressRoute circuit. ", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteCrossConnections": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_List", + "description": "Retrieves all the ExpressRouteCrossConnections in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCrossConnection resources. If there are no crossconnection resources an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionListResult" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionList": { + "$ref": "./examples/ExpressRouteCrossConnectionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_ListByResourceGroup", + "description": "Retrieves all the ExpressRouteCrossConnections in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.The operation returns a list of ExpressRouteCrossConnection resources. If there are no crossconnection resources an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionListResult" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionListByResourceGroup": { + "$ref": "./examples/ExpressRouteCrossConnectionListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_Get", + "description": "Gets details about the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group (peering location of the circuit)." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection (service key of the circuit)." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnection": { + "$ref": "./examples/ExpressRouteCrossConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_CreateOrUpdate", + "description": "Update the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + }, + "description": "Parameters supplied to the update express route crossConnection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + } + }, + "x-ms-examples": { + "UpdateExpressRouteCrossConnection": { + "$ref": "./examples/ExpressRouteCrossConnectionUpdate.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_UpdateTags", + "description": "Updates an express route cross connection tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cross connection." + }, + { + "name": "crossConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update express route cross connection tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + } + }, + "x-ms-examples": { + "UpdateExpressRouteCrossConnectionTags": { + "$ref": "./examples/ExpressRouteCrossConnectionUpdateTags.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings": { + "get": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_List", + "description": "Gets all peerings in a specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCrossConnectionPeering resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeeringList" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionBgpPeeringList": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_Delete", + "description": "Deletes the specified peering from the ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "DeleteExpressRouteCrossConnectionBgpPeering": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_Get", + "description": "Gets the specified peering for the ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionBgpPeering": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "peeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "Parameters supplied to the create or update ExpressRouteCrossConnection peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionBgpPeeringCreate": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringCreate.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/arpTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionArpTable" + ], + "operationId": "ExpressRouteCrossConnections_ListArpTable", + "description": "Gets the currently advertised ARP table associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsArpTable resource.", + "schema": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitsArpTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsArpTable": { + "$ref": "./examples/ExpressRouteCrossConnectionsArpTable.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTablesSummary/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionRouteTableSummary" + ], + "operationId": "ExpressRouteCrossConnections_ListRoutesTableSummary", + "description": "Gets the route table summary associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsRouteTableSummary resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionsRoutesTableSummaryListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsRouteTableSummary": { + "$ref": "./examples/ExpressRouteCrossConnectionsRouteTableSummary.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionRouteTable" + ], + "operationId": "ExpressRouteCrossConnections_ListRoutesTable", + "description": "Gets the currently advertised routes table associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsRouteTable resource.", + "schema": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitsRoutesTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsRouteTable": { + "$ref": "./examples/ExpressRouteCrossConnectionsRouteTable.json" + } + }, + "x-ms-long-running-operation": true + } + } + }, + "definitions": { + "ExpressRouteCrossConnectionRoutesTableSummary": { + "properties": { + "neighbor": { + "type": "string", + "description": "IP address of Neighbor router" + }, + "asn": { + "type": "integer", + "format": "int32", + "description": "Autonomous system number." + }, + "upDown": { + "type": "string", + "description": "The length of time that the BGP session has been in the Established state, or the current status if not in the Established state." + }, + "stateOrPrefixesReceived": { + "type": "string", + "description": "Current state of the BGP session, and the number of prefixes that have been received from a neighbor or peer group." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCrossConnectionsRoutesTableSummaryListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionRoutesTableSummary" + }, + "description": "A list of the routes table." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Cross Connections." + }, + "ExpressRouteCircuitReference": { + "properties": { + "id": { + "type":"string", + "description": "Corresponding Express Route Circuit Id." + } + } + }, + "ExpressRouteCrossConnectionProperties": { + "properties": { + "primaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The name of the primary port." + }, + "secondaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The name of the secondary port." + }, + "sTag": { + "readOnly": true, + "type": "integer", + "description": "The identifier of the circuit traffic." + }, + "peeringLocation": { + "type": "string", + "description": "The peering location of the ExpressRoute circuit." + }, + "bandwidthInMbps": { + "type": "integer", + "format": "int32", + "description": "The circuit bandwidth In Mbps." + }, + "expressRouteCircuit": { + "$ref": "#/definitions/ExpressRouteCircuitReference", + "description": "The ExpressRouteCircuit" + }, + "serviceProviderProvisioningState": { + "type": "string", + "description": "The provisioning state of the circuit in the connectivity provider system. Possible values are 'NotProvisioned', 'Provisioning', 'Provisioned'.", + "enum": [ + "NotProvisioned", + "Provisioning", + "Provisioned", + "Deprovisioning" + ], + "x-ms-enum": { + "name": "ServiceProviderProvisioningState", + "modelAsString": true + } + }, + "serviceProviderNotes": { + "type": "string", + "description": "Additional read only notes set by the connectivity provider." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Gets the provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + }, + "peerings": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "The list of peerings." + } + }, + "description": "Properties of ExpressRouteCrossConnection." + }, + "ExpressRouteCrossConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCrossConnectionProperties" + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRouteCrossConnection resource" + }, + "ExpressRouteCrossConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + }, + "description": "A list of ExpressRouteCrossConnection resources." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListExpressRouteCrossConnection API service call." + }, + "ExpressRouteCrossConnectionPeeringProperties": { + "properties": { + "peeringType": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRoutePeeringType", + "description": "The peering type." + }, + "state": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRoutePeeringState", + "description": "The peering state." + }, + "azureASN": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The Azure ASN." + }, + "peerASN": { + "type": "integer", + "format": "int64", + "minimum": 1, + "maximum": 4294967295, + "description": "The peer ASN." + }, + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "primaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The primary port." + }, + "secondaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The secondary port." + }, + "sharedKey": { + "type": "string", + "description": "The shared key." + }, + "vlanId": { + "type": "integer", + "format": "int32", + "description": "The VLAN ID." + }, + "microsoftPeeringConfig": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Gets the provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "lastModifiedBy": { + "type": "string", + "description": "Gets whether the provider or the customer last modified the peering." + }, + "ipv6PeeringConfig": { + "$ref": "./expressRouteCircuit.json#/definitions/Ipv6ExpressRouteCircuitPeeringConfig", + "description": "The IPv6 peering configuration." + } + } + }, + "ExpressRouteCrossConnectionPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCrossConnectionPeeringProperties" + }, + "name": { + "type": "string", + "description": "Gets name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peering in an ExpressRoute Cross Connection resource." + }, + "ExpressRouteCrossConnectionPeeringList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "The peerings in an express route cross connection." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeering API service call retrieves all peerings that belong to an ExpressRouteCrossConnection." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/expressRouteGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/expressRouteGateway.json new file mode 100644 index 000000000000..3baf47dd7605 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/expressRouteGateway.json @@ -0,0 +1,648 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteGateways": { + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_ListBySubscription", + "x-ms-examples": { + "ExpressRouteGatewayListBySubscription": { + "$ref": "./examples/ExpressRouteGatewayListBySubscription.json" + } + }, + "description": "Lists ExpressRoute gateways under a given subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteGatewayList" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways": { + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_ListByResourceGroup", + "x-ms-examples": { + "ExpressRouteGatewayListByResourceGroup": { + "$ref": "./examples/ExpressRouteGatewayListByResourceGroup.json" + } + }, + "description": "Lists ExpressRoute gateways in a given resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteGatewayList" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}": { + "put": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_CreateOrUpdate", + "x-ms-examples": { + "ExpressRouteGatewayCreate": { + "$ref": "./examples/ExpressRouteGatewayCreate.json" + } + }, + "description": "Creates or updates a ExpressRoute gateway in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "putExpressRouteGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + }, + "description": "Parameters required in an ExpressRoute gateway PUT operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoute gateway resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRoute gateway resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_Get", + "x-ms-examples": { + "ExpressRouteGatewayGet": { + "$ref": "./examples/ExpressRouteGatewayGet.json" + } + }, + "description": "Fetches the details of a ExpressRoute gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation succeeded. The operation returns the ExpressRoute gateway.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + } + } + }, + "delete": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_Delete", + "x-ms-examples": { + "ExpressRouteGatewayDelete": { + "$ref": "./examples/ExpressRouteGatewayDelete.json" + } + }, + "description": "Deletes the specified ExpressRoute gateway in a resource group. An ExpressRoute gateway resource can only be deleted when there are no connection subresources.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections/{connectionName}": { + "put": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_CreateOrUpdate", + "x-ms-examples": { + "ExpressRouteConnectionCreate": { + "$ref": "./examples/ExpressRouteConnectionCreate.json" + } + }, + "description": "Creates a connection between an ExpressRoute gateway and an ExpressRoute circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection subresource." + }, + { + "name": "putExpressRouteConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + }, + "description": "Parameters required in an ExpressRouteConnection PUT operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_Get", + "x-ms-examples": { + "ExpressRouteConnectionGet": { + "$ref": "./examples/ExpressRouteConnectionGet.json" + } + }, + "description": "Gets the specified ExpressRouteConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + } + } + }, + "delete": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_Delete", + "x-ms-examples": { + "ExpressRouteConnectionDelete": { + "$ref": "./examples/ExpressRouteConnectionDelete.json" + } + }, + "description": "Deletes a connection to a ExpressRoute circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection subresource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted, and the operation will continue asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections": { + "get": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_List", + "x-ms-examples": { + "ExpressRouteConnectionList": { + "$ref": "./examples/ExpressRouteConnectionList.json" + } + }, + "description": "Lists ExpressRouteConnections.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnectionList" + } + } + } + } + } + }, + "definitions": { + "VirtualHubId": { + "properties": { + "id": { + "type": "string", + "description": "The resource URI for the Virtual Hub where the ExpressRoute gateway is or will be deployed. The Virtual Hub resource and the ExpressRoute gateway resource reside in the same subscription." + } + }, + "description": "Virtual Hub identifier." + }, + "ExpressRouteCircuitPeeringId": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the ExpressRoute circuit peering." + } + }, + "description": "ExpressRoute circuit peering identifier." + }, + "ExpressRouteConnectionId": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of the ExpressRouteConnection." + } + }, + "description": "The ID of the ExpressRouteConnection." + }, + "ExpressRouteGatewayProperties": { + "required": [ + "virtualHub" + ], + "properties": { + "autoScaleConfiguration": { + "properties": { + "bounds": { + "properties": { + "min": { + "type": "integer", + "description": "Minimum number of scale units deployed for ExpressRoute gateway." + }, + "max": { + "type": "integer", + "description": "Maximum number of scale units deployed for ExpressRoute gateway." + } + }, + "description": "Minimum and maximum number of scale units to deploy." + } + }, + "description": "Configuration for auto scaling." + }, + "expressRouteConnections": { + "type": "array", + "readOnly": true, + "description": "List of ExpressRoute connections to the ExpressRoute gateway.", + "items": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioning state of the resource.", + "enum":[ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "virtualHub": { + "$ref": "#/definitions/VirtualHubId", + "description": "The Virtual Hub where the ExpressRoute gateway is or will be deployed." + } + }, + "description": "ExpressRoute gateway resource properties." + }, + "ExpressRouteGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteGatewayProperties" + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRoute gateway resource." + }, + "ExpressRouteGatewayList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteGateway" + }, + "description": "List of ExpressRoute gateways." + } + }, + "description": "List of ExpressRoute gateways." + }, + "ExpressRouteConnectionProperties": { + "required": [ + "expressRouteCircuitPeering" + ], + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioning state of the resource.", + "enum":[ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "expressRouteCircuitPeering": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringId", + "description": "The ExpressRoute circuit peering." + }, + "authorizationKey": { + "type": "string", + "description": "Authorization key to establish the connection." + }, + "routingWeight": { + "type": "integer", + "description": "The routing weight associated to the connection." + } + }, + "description": "Properties of the ExpressRouteConnection subresource." + }, + "ExpressRouteConnection": { + "required": [ + "name" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteConnectionProperties" + }, + "name": { + "type": "string", + "description": "The name of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ExpressRouteConnection resource." + }, + "ExpressRouteConnectionList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteConnection" + }, + "description": "The list of ExpressRoute connections" + } + }, + "description": "ExpressRouteConnection list" + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/expressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/expressRoutePort.json new file mode 100644 index 000000000000..29781a83acfa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/expressRoutePort.json @@ -0,0 +1,747 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePortsLocations": { + "get": { + "tags": [ + "ExpressRoutePortsLocations" + ], + "operationId": "ExpressRoutePortsLocations_List", + "description": "Retrieves all ExpressRoutePort peering locations. Does not return available bandwidths for each location. Available bandwidths can only be obtained when retriving a specific peering location.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the list of all ExpressRoutePort peering locations.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortsLocationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortsLocationList": { "$ref": "./examples/ExpressRoutePortsLocationList.json" } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePortsLocations/{locationName}": { + "get": { + "tags": [ + "ExpressRoutePortsLocations" + ], + "operationId": "ExpressRoutePortsLocations_Get", + "description": "Retrieves a single ExpressRoutePort peering location, including the list of available bandwidths available at said peering location.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the requested ExpressRoutePort peering location." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRoutePort peering location.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortsLocation" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortsLocationGet": { "$ref": "./examples/ExpressRoutePortsLocationGet.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}": { + "delete": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_Delete", + "description": "Deletes the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "ExpressRoutePortDelete": { "$ref": "./examples/ExpressRoutePortDelete.json" } + } + }, + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_Get", + "description": "Retrieves the requested ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of ExpressRoutePort." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortGet": { "$ref": "./examples/ExpressRoutePortGet.json" } + } + }, + "put": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_CreateOrUpdate", + "description": "Creates or updates the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + }, + "description": "Parameters supplied to the create ExpressRoutePort operation." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "ExpressRoutePortCreate": { "$ref": "./examples/ExpressRoutePortCreate.json" }, + "ExpressRoutePortUpdateLink": { "$ref": "./examples/ExpressRoutePortUpdateLink.json" } + } + }, + "patch": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_UpdateTags", + "description": "Update ExpressRoutePort tags", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update ExpressRoutePort resource tags." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "ExpressRoutePortUpdateTags": { "$ref": "./examples/ExpressRoutePortUpdateTags.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts": { + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_ListByResourceGroup", + "description": "List all the ExpressRoutePort resources in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRoutePort resources. If there are no ExpressRoutePort resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortListByResourceGroup": { "$ref": "./examples/ExpressRoutePortListByResourceGroup.json" } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePorts": { + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_List", + "description": "List all the ExpressRoutePort resources in the specified subscription", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRoutePort resources. If there are no ExpressRoutePort resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortList": { "$ref": "./examples/ExpressRoutePortList.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}/links/{linkName}": { + "get": { + "tags": [ + "ExpressRouteLinks" + ], + "operationId": "ExpressRouteLinks_Get", + "description": "Retrieves the specified ExpressRouteLink resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "linkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteLink resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRouteLink resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteLink" + } + } + }, + "x-ms-examples": { + "ExpressRouteLinkGet": { "$ref": "./examples/ExpressRouteLinkGet.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}/links": { + "get": { + "tags": [ + "ExpressRouteLinks" + ], + "operationId": "ExpressRouteLinks_List", + "description": "Retrieve the ExpressRouteLink sub-resources of the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteLink resources. If there are no ExpressRouteLink resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteLinkListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRouteLinkGet": { "$ref": "./examples/ExpressRouteLinkList.json" } + } + } + } + }, + "definitions": { + "ExpressRoutePortsLocationBandwidths": { + "title": "ExpressRoutePorts Location Bandwidths", + "description" : "Real-time inventory of available ExpressRoute port bandwidths.", + "properties": { + "offerName": { + "type": "string", + "readOnly": true, + "description": "Bandwidth descriptive name" + }, + "valueInGbps": { + "type": "integer", + "readOnly": true, + "description": "Bandwidth value in Gbps" + } + } + }, + "ExpressRoutePortsLocationPropertiesFormat": { + "title": "ExpressRoutePorts Location Properties", + "description" : "Properties specific to ExpressRoutePorts peering location resources.", + "properties": { + "address": { + "type": "string", + "readOnly": true, + "description": "Address of peering location." + }, + "contact": { + "type": "string", + "readOnly": true, + "description": "Contact details of peering locations." + }, + "availableBandwidths": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePortsLocationBandwidths" + }, + "description": "The inventory of available ExpressRoutePort bandwidths." + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioning state of the ExpressRoutePortLocation resource. Possible values are: 'Succeeded', 'Updating', 'Deleting', and 'Failed'." + } + } + }, + "ExpressRoutePortsLocation": { + "title": "ExpressRoutePorts Peering Location", + "description": "Definition of the ExpressRoutePorts peering location resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRoutePortsLocationPropertiesFormat", + "description": "ExpressRoutePort peering location properties" + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "ExpressRoutePortsLocationListResult": { + "title": "ExpressRoutePorts Location List Result", + "description": "Response for ListExpressRoutePortsLocations API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePortsLocation" + }, + "description": "The list of all ExpressRoutePort peering locations." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "ExpressRouteLinkPropertiesFormat": { + "title": "ExpressRouteLink Resource Properties", + "description": "Properties specific to ExpressRouteLink resources.", + "properties": { + "routerName": { + "readOnly": true, + "type": "string", + "description": "Name of Azure router associated with physical port." + }, + "interfaceName": { + "readOnly": true, + "type": "string", + "description": "Name of Azure router interface." + }, + "patchPanelId": { + "readOnly": true, + "type": "string", + "description": "Mapping between physical port to patch panel port." + }, + "rackId": { + "readOnly": true, + "type": "string", + "description": "Mapping of physical patch panel to rack." + }, + "connectorType": { + "readOnly": true, + "type": "string", + "description": "Physical fiber port type.", + "enum": [ + "LC", + "SC" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkConnectorType", + "modelAsString": true + } + }, + "adminState": { + "type": "string", + "description": "Administrative state of the physical port", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkAdminState", + "modelAsString": true + } + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioning state of the ExpressRouteLink resource. Possible values are: 'Succeeded', 'Updating', 'Deleting', and 'Failed'." + } + } + }, + "ExpressRouteLink": { + "title" : "ExpressRouteLink", + "description": "ExpressRouteLink child resource definition.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteLinkPropertiesFormat", + "description": "ExpressRouteLink properties" + }, + "name": { + "type": "string", + "description": "Name of child port resource that is unique among child port resources of the parent." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ] + }, + "ExpressRouteLinkListResult": { + "title": "ExpressRouteLink List Result", + "description": "Response for ListExpressRouteLinks API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteLink" + }, + "description": "The list of ExpressRouteLink sub-resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "ExpressRoutePortPropertiesFormat": { + "title": "ExpressRoutePort Properties", + "description" : "Properties specific to ExpressRoutePort resources.", + "properties": { + "peeringLocation": { + "type": "string", + "description": "The name of the peering location that the ExpressRoutePort is mapped to physically." + }, + "bandwidthInGbps": { + "type": "integer", + "description": "Bandwidth of procured ports in Gbps" + }, + "provisionedBandwidthInGbps": { + "readOnly": true, + "type": "number", + "description": "Aggregate Gbps of associated circuit bandwidths." + }, + "mtu": { + "readOnly": true, + "type": "string", + "description": "Maximum transmission unit of the physical port pair(s)" + }, + "encapsulation": { + "type": "string", + "description": "Encapsulation method on physical ports.", + "enum": [ + "Dot1Q", + "QinQ" + ], + "x-ms-enum": { + "name": "ExpressRoutePortsEncapsulation", + "modelAsString": true + } + }, + "etherType": { + "readOnly": true, + "type": "string", + "description": "Ethertype of the physical port." + }, + "allocationDate": { + "readOnly": true, + "type": "string", + "description": "Date of the physical port allocation to be used in Letter of Authorization." + }, + "links": { + "title" : "ExpressRouteLink Sub-Resources", + "description" : "The set of physical links of the ExpressRoutePort resource", + "readOnly": false, + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteLink" + } + }, + "circuits": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Reference the ExpressRoute circuit(s) that are provisioned on this ExpressRoutePort resource." + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioning state of the ExpressRoutePort resource. Possible values are: 'Succeeded', 'Updating', 'Deleting', and 'Failed'." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the ExpressRoutePort resource." + } + } + }, + "ExpressRoutePort": { + "title": "ExpressRoute Port", + "description": "ExpressRoutePort resource definition.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRoutePortPropertiesFormat", + "description": "ExpressRoutePort properties" + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "ExpressRoutePortListResult": { + "title": "ExpressRoute Port List Result", + "description": "Response for ListExpressRoutePorts API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePort" + }, + "description": "A list of ExpressRoutePort resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/interfaceEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/interfaceEndpoint.json new file mode 100644 index 000000000000..528341cb8a38 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/interfaceEndpoint.json @@ -0,0 +1,338 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/interfaceEndpoints/{interfaceEndpointName}": { + "delete": { + "tags": [ + "InterfaceEndpoints" + ], + "operationId": "InterfaceEndpoints_Delete", + "description": "Deletes the specified interface endpoint.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "interfaceEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the interface endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete interface endpoint": { "$ref": "./examples/InterfaceEndpointDelete.json" } + } + }, + "get": { + "tags": [ + "InterfaceEndpoints" + ], + "operationId": "InterfaceEndpoints_Get", + "description": "Gets the specified interface endpoint by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "interfaceEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the interface endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting InterfaceEndpoint resource.", + "schema": { + "$ref": "#/definitions/InterfaceEndpoint" + } + } + }, + "x-ms-examples": { + "Get interface endpoint": { "$ref": "./examples/InterfaceEndpointGet.json" } + } + }, + "put": { + "tags": [ + "InterfaceEndpoints" + ], + "operationId": "InterfaceEndpoints_CreateOrUpdate", + "description": "Creates or updates an interface endpoint in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "interfaceEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the interface endpoint." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/InterfaceEndpoint" + }, + "description": "Parameters supplied to the create or update interface endpoint operation" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting InterfaceEndpoint resource.", + "schema": { + "$ref": "#/definitions/InterfaceEndpoint" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting InterfaceEndpoint resource.", + "schema": { + "$ref": "#/definitions/InterfaceEndpoint" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create interface endpoint": { "$ref": "./examples/InterfaceEndpointCreate.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/interfaceEndpoints": { + "get": { + "tags": [ + "InterfaceEndpoints" + ], + "operationId": "InterfaceEndpoints_List", + "description": "Gets all interface endpoints in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of InterfaceEndpoint resources.", + "schema": { + "$ref": "#/definitions/InterfaceEndpointListResult" + } + } + }, + "x-ms-examples": { + "List interface endpoints in resource group": { "$ref": "./examples/InterfaceEndpointList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/interfaceEndpoints": { + "get": { + "tags": [ + "InterfaceEndpoints" + ], + "operationId": "InterfaceEndpoints_ListBySubscription", + "description": "Gets all interface endpoints in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of InterfaceEndpoint resources.", + "schema": { + "$ref": "#/definitions/InterfaceEndpointListResult" + } + } + }, + "x-ms-examples": { + "List all interface endpoints": { "$ref": "./examples/InterfaceEndpointListAll.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "InterfaceEndpoint": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/InterfaceEndpointProperties", + "description": "Properties of the interface endpoint." + }, + "etag": { + "type": "string", + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Interface endpoint resource." + }, + "InterfaceEndpointProperties": { + "properties": { + "fqdn": { + "type": "string", + "description": "A first-party service's FQDN that is mapped to the private IP allocated via this interface endpoint." + }, + "endpointService": { + "$ref": "#/definitions/EndpointService", + "description": "A reference to the service being brought into the virtual network." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The ID of the subnet from which the private IP will be allocated." + }, + "networkInterfaces": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "Gets an array of references to the network interfaces created for this interface endpoint." + }, + "owner": { + "type": "string", + "readOnly": true, + "description": "A read-only property that identifies who created this interface endpoint." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the interface endpoint. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of the interface endpoint." + }, + "EndpointService": { + "properties": { + "id": { + "type": "string", + "description": "A unique identifier of the service being referenced by the interface endpoint." + } + }, + "description": "Identifies the service being brought into the virtual network." + }, + "InterfaceEndpointListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/InterfaceEndpoint" + }, + "description": "Gets a list of InterfaceEndpoint resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListInterfaceEndpoints API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/loadBalancer.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/loadBalancer.json new file mode 100644 index 000000000000..0de884639375 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/loadBalancer.json @@ -0,0 +1,1804 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}": { + "delete": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_Delete", + "description": "Deletes the specified load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete load balancer": { "$ref": "./examples/LoadBalancerDelete.json" } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_Get", + "description": "Gets the specified load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + } + }, + "x-ms-examples": { + "Get load balancer": { "$ref": "./examples/LoadBalancerGet.json" } + } + }, + "put": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_CreateOrUpdate", + "description": "Creates or updates a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LoadBalancer" + }, + "description": "Parameters supplied to the create or update load balancer operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + } + }, + "x-ms-examples": { + "Create load balancer": { "$ref": "./examples/LoadBalancerCreate.json" }, + "Create load balancer with inbound nat pool": { "$ref": "./examples/LoadBalancerCreateWithInboundNatPool.json" } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_UpdateTags", + "description": "Updates a load balancer tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update load balancer tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + } + }, + "x-ms-examples": { + "Update load balancer tags": { "$ref": "./examples/LoadBalancerUpdateTags.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/loadBalancers": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_ListAll", + "description": "Gets all the load balancers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerListResult" + } + } + }, + "x-ms-examples": { + "List all load balancers": { "$ref": "./examples/LoadBalancerListAll.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_List", + "description": "Gets all the load balancers in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerListResult" + } + } + }, + "x-ms-examples": { + "List load balancers in resource group": { "$ref": "./examples/LoadBalancerList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_List", + "description": "Gets all the load balancer backed address pools.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer BackendAddressPool resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerBackendAddressPoolListResult" + } + } + }, + "x-ms-examples": { + "LoadBalancerBackendAddressPoolList": { "$ref": "./examples/LoadBalancerBackendAddressPoolList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_Get", + "description": "Gets load balancer backend address pool.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "backendAddressPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the backend address pool." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer BackendAddressPool resource.", + "schema": { + "$ref": "#/definitions/BackendAddressPool" + } + } + }, + "x-ms-examples": { + "LoadBalancerBackendAddressPoolGet": { "$ref": "./examples/LoadBalancerBackendAddressPoolGet.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerFrontendIPConfigurations_List", + "description": "Gets all the load balancer frontend IP configurations.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer FrontendIPConfiguration resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerFrontendIPConfigurationListResult" + } + } + }, + "x-ms-examples": { + "LoadBalancerFrontendIPConfigurationList": { "$ref": "./examples/LoadBalancerFrontendIPConfigurationList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations/{frontendIPConfigurationName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerFrontendIPConfigurations_Get", + "description": "Gets load balancer frontend IP configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "frontendIPConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the frontend IP configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer FrontendIPConfiguration resource.", + "schema": { + "$ref": "#/definitions/FrontendIPConfiguration" + } + } + }, + "x-ms-examples": { + "LoadBalancerFrontendIPConfigurationGet": { "$ref": "./examples/LoadBalancerFrontendIPConfigurationGet.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_List", + "description": "Gets all the inbound nat rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer InboundNatRule resources.", + "schema": { + "$ref": "#/definitions/InboundNatRuleListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "InboundNatRuleList": { "$ref": "./examples/InboundNatRuleList.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}": { + "delete": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_Delete", + "description": "Deletes the specified load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "InboundNatRuleDelete": { "$ref": "./examples/InboundNatRuleDelete.json" } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_Get", + "description": "Gets the specified load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + } + }, + "x-ms-examples": { + "InboundNatRuleGet": { "$ref": "./examples/InboundNatRuleGet.json" } + } + }, + "put": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_CreateOrUpdate", + "description": "Creates or updates a load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "name": "inboundNatRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "Parameters supplied to the create or update inbound nat rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "InboundNatRuleCreate": { "$ref": "./examples/InboundNatRuleCreate.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerLoadBalancingRules_List", + "description": "Gets all the load balancing rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer LoadBalancingRule resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerLoadBalancingRuleListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "LoadBalancerLoadBalancingRuleList": { "$ref": "./examples/LoadBalancerLoadBalancingRuleList.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules/{loadBalancingRuleName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerLoadBalancingRules_Get", + "description": "Gets the specified load balancer load balancing rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "loadBalancingRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancing rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LoadBalancingRule resource.", + "schema": { + "$ref": "#/definitions/LoadBalancingRule" + } + } + }, + "x-ms-examples": { + "LoadBalancerLoadBalancingRuleGet": { "$ref": "./examples/LoadBalancerLoadBalancingRuleGet.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerOutboundRules_List", + "description": "Gets all the outbound rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer OutboundRule resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerOutboundRuleListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "LoadBalancerOutboundRuleList": { "$ref": "./examples/LoadBalancerOutboundRuleList.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules/{outboundRuleName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerOutboundRules_Get", + "description": "Gets the specified load balancer outbound rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "outboundRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the outbound rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting OutboundRule resource.", + "schema": { + "$ref": "#/definitions/OutboundRule" + } + } + }, + "x-ms-examples": { + "LoadBalancerOutboundRuleGet": { "$ref": "./examples/LoadBalancerOutboundRuleGet.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/networkInterfaces": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerNetworkInterfaces_List", + "description": "Gets associated load balancer network interfaces.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + } + }, + "x-ms-examples": { + "LoadBalancerNetworkInterfaceListVmss": { "$ref": "./examples/LoadBalancerNetworkInterfaceListVmss.json" }, + "LoadBalancerNetworkInterfaceListSimple": { "$ref": "./examples/LoadBalancerNetworkInterfaceListSimple.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerProbes_List", + "description": "Gets all the load balancer probes.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer Probe resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerProbeListResult" + } + } + }, + "x-ms-examples": { + "LoadBalancerProbeList": { "$ref": "./examples/LoadBalancerProbeList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerProbes_Get", + "description": "Gets load balancer probe.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "probeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the probe." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer Probe resource.", + "schema": { + "$ref": "#/definitions/Probe" + } + } + }, + "x-ms-examples": { + "LoadBalancerProbeGet": { "$ref": "./examples/LoadBalancerProbeGet.json" } + } + } + } + }, + "definitions": { + "LoadBalancerSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a load balancer SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "LoadBalancerSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a load balancer" + }, + "FrontendIPConfigurationPropertiesFormat": { + "properties": { + "inboundNatRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Read only. Inbound rules URIs that use this frontend IP." + }, + "inboundNatPools": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Read only. Inbound pools URIs that use this frontend IP." + }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Read only. Outbound rules URIs that use this frontend IP." + }, + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Gets load balancing rules URIs that use this frontend IP." + }, + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "type": "string", + "description": "The Private IP allocation method. Possible values are: 'Static' and 'Dynamic'.", + "enum": [ + "Static", + "Dynamic" + ], + "x-ms-enum": { + "name": "IPAllocationMethod", + "modelAsString": true + } + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference of the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference of the Public IP resource." + }, + "publicIPPrefix": { + "$ref":"./network.json#/definitions/SubResource", + "description": "The reference of the Public IP Prefix resource." + }, + "provisioningState": { + "type": "string", + "description": "Gets the provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of Frontend IP Configuration of the load balancer." + }, + "FrontendIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FrontendIPConfigurationPropertiesFormat", + "description": "Properties of the load balancer probe." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend IP address of the load balancer." + }, + "BackendAddressPoolPropertiesFormat": { + "properties": { + "backendIPConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "Gets collection of references to IP addresses defined in network interfaces." + }, + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Gets load balancing rules that use this backend address pool." + }, + "outboundRule": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "Gets outbound rules that use this backend address pool." + }, + "provisioningState": { + "type": "string", + "description": "Get provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of the backend address pool." + }, + "BackendAddressPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendAddressPoolPropertiesFormat", + "description": "Properties of load balancer backend address pool." + }, + "name": { + "type": "string", + "description": "Gets name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Pool of backend IP addresses." + }, + "LoadBalancingRulePropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to a pool of DIPs. Inbound traffic is randomly load balanced across IPs in the backend IPs." + }, + "probe": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the load balancer probe used by the load balancing rule." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol" + }, + "loadDistribution": { + "type": "string", + "description": "The load distribution policy for this rule. Possible values are 'Default', 'SourceIP', and 'SourceIPProtocol'.", + "enum": [ + "Default", + "SourceIP", + "SourceIPProtocol" + ], + "x-ms-enum": { + "name": "LoadDistribution", + "modelAsString": true + } + }, + "frontendPort": { + "type": "integer", + "format": "int32", + "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values are between 0 and 65534. Note that value 0 enables \"Any Port\"" + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for internal connections on the endpoint. Acceptable values are between 0 and 65535. Note that value 0 enables \"Any Port\"" + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "disableOutboundSnat": { + "type": "boolean", + "description": "Configures SNAT for the VMs in the backend pool to use the publicIP address specified in the frontend of the load balancing rule." + }, + "provisioningState": { + "type": "string", + "description": "Gets the provisioning state of the PublicIP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "required": [ + "protocol", + "frontendPort" + ], + "description": "Properties of the load balancer." + }, + "LoadBalancingRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancingRulePropertiesFormat", + "description": "Properties of load balancer load balancing rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A load balancing rule for a load balancer." + }, + "ProbePropertiesFormat": { + "properties": { + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The load balancer rules that use this probe." + }, + "protocol": { + "type": "string", + "description": "The protocol of the end point. Possible values are: 'Http', 'Tcp', or 'Https'. If 'Tcp' is specified, a received ACK is required for the probe to be successful. If 'Http' or 'Https' is specified, a 200 OK response from the specifies URI is required for the probe to be successful.", + "enum": [ + "Http", + "Tcp", + "Https" + ], + "x-ms-enum": { + "name": "ProbeProtocol", + "modelAsString": true + } + }, + "port": { + "type": "integer", + "format": "int32", + "description": "The port for communicating the probe. Possible values range from 1 to 65535, inclusive." + }, + "intervalInSeconds": { + "type": "integer", + "format": "int32", + "description": "The interval, in seconds, for how frequently to probe the endpoint for health status. Typically, the interval is slightly less than half the allocated timeout period (in seconds) which allows two full probes before taking the instance out of rotation. The default value is 15, the minimum value is 5." + }, + "numberOfProbes": { + "type": "integer", + "format": "int32", + "description": "The number of probes where if no response, will result in stopping further traffic from being delivered to the endpoint. This values allows endpoints to be taken out of rotation faster or slower than the typical times used in Azure." + }, + "requestPath": { + "type": "string", + "description": "The URI used for requesting health status from the VM. Path is required if a protocol is set to http. Otherwise, it is not allowed. There is no default value." + }, + "provisioningState": { + "type": "string", + "description": "Gets the provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "required": [ + "protocol", + "port" + ], + "description": "Load balancer probe resource." + }, + "Probe": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProbePropertiesFormat", + "description": "Properties of load balancer probe." + }, + "name": { + "type": "string", + "description": "Gets name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A load balancer probe." + }, + "InboundNatRulePropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "backendIPConfiguration": { + "readOnly": true, + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "A reference to a private IP address defined on a network interface of a VM. Traffic sent to the frontend port of each of the frontend IP configurations is forwarded to the backend IP." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol" + }, + "frontendPort": { + "type": "integer", + "format": "int32", + "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values range from 1 to 65534." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for the internal endpoint. Acceptable values range from 1 to 65535." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "provisioningState": { + "type": "string", + "description": "Gets the provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of the inbound NAT rule." + }, + "InboundNatRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/InboundNatRulePropertiesFormat", + "description": "Properties of load balancer inbound nat rule." + }, + "name": { + "type": "string", + "description": "Gets name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Inbound NAT rule of the load balancer." + }, + "InboundNatPoolPropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol" + }, + "frontendPortRangeStart": { + "type": "integer", + "format": "int32", + "description": "The first port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65534." + }, + "frontendPortRangeEnd": { + "type": "integer", + "format": "int32", + "description": "The last port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65535." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for internal connections on the endpoint. Acceptable values are between 1 and 65535." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "provisioningState": { + "type": "string", + "description": "Gets the provisioning state of the PublicIP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "required": [ + "protocol", + "frontendPortRangeStart", + "frontendPortRangeEnd", + "backendPort" + ], + "description": "Properties of Inbound NAT pool." + }, + "InboundNatPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/InboundNatPoolPropertiesFormat", + "description": "Properties of load balancer inbound nat pool." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Inbound NAT pool of the load balancer." + }, + "OutboundRulePropertiesFormat": { + "properties": { + "allocatedOutboundPorts": { + "type": "integer", + "format": "int32", + "description": "The number of outbound ports to be used for NAT." + }, + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The Frontend IP addresses of the load balancer." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to a pool of DIPs. Outbound traffic is randomly load balanced across IPs in the backend IPs." + }, + "provisioningState": { + "type": "string", + "description": "Gets the provisioning state of the PublicIP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + }, + "protocol": { + "type": "string", + "description": "Protocol - TCP, UDP or All", + "enum": [ + "Tcp", + "Udp", + "All" + ] + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "description": "The timeout for the TCP idle connection" + } + }, + "required": [ + "backendAddressPool", + "frontendIPConfigurations", + "protocol" + ], + "description": "Outbound pool of the load balancer." + }, + "OutboundRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OutboundRulePropertiesFormat", + "description": "Properties of load balancer outbound rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Outbound pool of the load balancer." + }, + "LoadBalancerPropertiesFormat": { + "properties": { + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/FrontendIPConfiguration" + }, + "description": "Object representing the frontend IPs to be used for the load balancer" + }, + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/BackendAddressPool" + }, + "description": "Collection of backend address pools used by a load balancer" + }, + "loadBalancingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + }, + "description": "Object collection representing the load balancing rules Gets the provisioning " + }, + "probes": { + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + }, + "description": "Collection of probe objects used in the load balancer" + }, + "inboundNatRules": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "Collection of inbound NAT Rules used by a load balancer. Defining inbound NAT rules on your load balancer is mutually exclusive with defining an inbound NAT pool. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an Inbound NAT pool. They have to reference individual inbound NAT rules." + }, + "inboundNatPools": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatPool" + }, + "description": "Defines an external port range for inbound NAT to a single backend port on NICs associated with a load balancer. Inbound NAT rules are created automatically for each NIC associated with the Load Balancer using an external port from this range. Defining an Inbound NAT pool on your Load Balancer is mutually exclusive with defining inbound Nat rules. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an inbound NAT pool. They have to reference individual inbound NAT rules." + }, + "outboundRules": { + "type": "array", + "items": { + "$ref": "#/definitions/OutboundRule" + }, + "description": "The outbound rules." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the load balancer resource." + }, + "provisioningState": { + "type": "string", + "description": "Gets the provisioning state of the PublicIP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of the load balancer." + }, + "LoadBalancer": { + "properties": { + "sku": { + "$ref": "#/definitions/LoadBalancerSku", + "description": "The load balancer SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancerPropertiesFormat", + "description": "Properties of load balancer." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "LoadBalancer resource" + }, + "LoadBalancerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "description": "A list of load balancers in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLoadBalancers API service call." + }, + "InboundNatRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "A list of inbound nat rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListInboundNatRule API service call." + }, + "LoadBalancerBackendAddressPoolListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BackendAddressPool" + }, + "description": "A list of backend address pools in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListBackendAddressPool API service call." + }, + "LoadBalancerFrontendIPConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FrontendIPConfiguration" + }, + "description": "A list of frontend IP configurations in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListFrontendIPConfiguration API service call." + }, + "LoadBalancerLoadBalancingRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + }, + "description": "A list of load balancing rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLoadBalancingRule API service call." + }, + "LoadBalancerOutboundRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/OutboundRule" + }, + "description": "A list of outbound rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListOutboundRule API service call." + }, + "LoadBalancerProbeListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + }, + "description": "A list of probes in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListProbe API service call." + }, + "TransportProtocol": { + "type": "string", + "description": "The transport protocol for the endpoint. Possible values are 'Udp' or 'Tcp' or 'All'.", + "enum": [ + "Udp", + "Tcp", + "All" + ], + "x-ms-enum": { + "name": "TransportProtocol", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/network.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/network.json new file mode 100644 index 000000000000..7b4fe9cf8952 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/network.json @@ -0,0 +1,213 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + }, + "definitions": { + "ErrorDetails": { + "properties": { + "code": { + "type": "string" + }, + "target": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "Error": { + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "target": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetails" + } + }, + "innerError": { + "type": "string" + } + } + }, + "AzureAsyncOperationResult": { + "properties": { + "status": { + "type": "string", + "description": "Status of the Azure async operation. Possible values are: 'InProgress', 'Succeeded', and 'Failed'.", + "enum": [ + "InProgress", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "NetworkOperationStatus", + "modelAsString": true + } + }, + "error": { + "$ref": "#/definitions/Error" + } + }, + "description": "The response body contains the status of the specified asynchronous operation, indicating whether it has succeeded, is in progress, or has failed. Note that this status is distinct from the HTTP status code returned for the Get Operation Status operation itself. If the asynchronous operation succeeded, the response body includes the HTTP status code for the successful request. If the asynchronous operation failed, the response body includes the HTTP status code for the failed request and error information regarding the failure." + }, + "Resource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Common resource representation.", + "x-ms-azure-resource": true + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + }, + "description": "Reference to another subresource.", + "x-ms-azure-resource": true + }, + "TagsObject": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Tags object for patch operations." + }, + "ManagedServiceIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the resource." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/networkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/networkInterface.json new file mode 100644 index 000000000000..deefa5ef6d3b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/networkInterface.json @@ -0,0 +1,1393 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}": { + "delete": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_Delete", + "description": "Deletes the specified network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete network interface": { "$ref": "./examples/NetworkInterfaceDelete.json" } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_Get", + "description": "Gets information about the specified network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + } + }, + "x-ms-examples": { + "Get network interface": { "$ref": "./examples/NetworkInterfaceGet.json" } + } + }, + "put": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_CreateOrUpdate", + "description": "Creates or updates a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkInterface" + }, + "description": "Parameters supplied to the create or update network interface operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + } + }, + "x-ms-examples": { + "Create network interface": { "$ref": "./examples/NetworkInterfaceCreate.json" } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_UpdateTags", + "description": "Updates a network interface tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network interface tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + } + }, + "x-ms-examples": { + "Update network interface tags": { "$ref": "./examples/NetworkInterfaceUpdateTags.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListAll", + "description": "Gets all network interfaces in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceListResult" + } + } + }, + "x-ms-examples": { + "List all network interfaces": { "$ref": "./examples/NetworkInterfaceListAll.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_List", + "description": "Gets all network interfaces in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceListResult" + } + } + }, + "x-ms-examples": { + "List network interfaces in resource group": { "$ref": "./examples/NetworkInterfaceList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveRouteTable": { + "post": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetEffectiveRouteTable", + "description": "Gets all route tables applied to a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of EffectRoute resources.", + "schema": { + "$ref": "#/definitions/EffectiveRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "Show network interface effective route tables": { "$ref": "./examples/NetworkInterfaceEffectiveRouteTableList.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveNetworkSecurityGroups": { + "post": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListEffectiveNetworkSecurityGroups", + "description": "Gets all network security groups applied to a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroupListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "List network interface effective network security groups": { "$ref": "./examples/NetworkInterfaceEffectiveNSGList.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceIPConfigurations_List", + "description": "Get all ip configurations in a network interface", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface IPConfiguration resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceIPConfigurationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "NetworkInterfaceIPConfigurationList": { "$ref": "./examples/NetworkInterfaceIPConfigurationList.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceIPConfigurations_Get", + "description": "Gets the specified network interface ip configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ip configuration name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface IPConfiguration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + } + } + }, + "x-ms-examples": { + "NetworkInterfaceIPConfigurationGet": { "$ref": "./examples/NetworkInterfaceIPConfigurationGet.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/loadBalancers": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceLoadBalancers_List", + "description": "List all load balancers in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceLoadBalancerListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "NetworkInterfaceLoadBalancerList": { "$ref": "./examples/NetworkInterfaceLoadBalancerList.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations/{tapConfigurationName}": { + "delete": { + "tags": [ + "Network Interfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_Delete", + "description": "Deletes the specified tap configuration from the NetworkInterface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + } + }, + "x-ms-examples": + { + "Delete tap configuration": { "$ref": "./examples/NetworkInterfaceTapConfigurationDelete.json" } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_Get", + "description": "Get the specified tap configuration on a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a tap configuration.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + } + }, + "x-ms-examples": + { + "Get Network Interface Tap Configurations": { "$ref": "./examples/NetworkInterfaceTapConfigurationGet.json" } + } + }, + "put": { + "tags": [ + "Network Interfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_CreateOrUpdate", + "description": "Creates or updates a Tap configuration in the specified NetworkInterface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "name": "tapConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "Parameters supplied to the create or update tap configuration operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Tap Configuration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Tap configuration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + } + }, + "x-ms-examples": + { + "Create Network Interface Tap Configurations": { "$ref": "./examples/NetworkInterfaceTapConfigurationCreate.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_List", + "description": "Get all Tap configurations in a network interface", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface TapConfiguration resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfigurationListResult" + } + } + }, + "x-ms-examples": { + "List virtual network tap configurations": { "$ref": "./examples/NetworkInterfaceTapConfigurationList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkInterfaceTapConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceTapConfigurationPropertiesFormat", + "description": "Properties of the Virtual Network Tap configuration" + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Tap configuration in a Network Interface" + }, + "NetworkInterfaceTapConfigurationPropertiesFormat": { + "properties": { + "virtualNetworkTap": { + "$ref": "./virtualNetworkTap.json#/definitions/VirtualNetworkTap", + "description": "The reference of the Virtual Network Tap resource." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the network interface tap configuration. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of Virtual Network Tap configuration." + }, + "NetworkInterfaceIPConfigurationPropertiesFormat": { + "properties": { + "virtualNetworkTaps": { + "type": "array", + "items": { + "$ref": "./virtualNetworkTap.json#/definitions/VirtualNetworkTap" + }, + "description": "The reference to Virtual Network Taps." + }, + "applicationGatewayBackendAddressPools": { + "type": "array", + "items": { + "$ref": "./applicationGateway.json#/definitions/ApplicationGatewayBackendAddressPool" + }, + "description": "The reference of ApplicationGatewayBackendAddressPool resource." + }, + "loadBalancerBackendAddressPools": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/BackendAddressPool" + }, + "description": "The reference of LoadBalancerBackendAddressPool resource." + }, + "loadBalancerInboundNatRules": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/InboundNatRule" + }, + "description": "A list of references of LoadBalancerInboundNatRules." + }, + "privateIPAddress": { + "type": "string", + "description": "Private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "type": "string", + "description": "Defines how a private IP address is assigned. Possible values are: 'Static' and 'Dynamic'.", + "enum": [ + "Static", + "Dynamic" + ], + "x-ms-enum": { + "name": "IPAllocationMethod", + "modelAsString": true + } + }, + "privateIPAddressVersion": { + "type": "string", + "description": "Available from Api-Version 2016-03-30 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "Subnet bound to the IP configuration." + }, + "primary": { + "type": "boolean", + "description": "Gets whether this is a primary customer address on the network interface." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "Public IP address bound to the IP configuration." + }, + "applicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "Application security groups in which the IP configuration is included." + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the network interface IP configuration. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of IP configuration." + }, + "NetworkInterfaceIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceIPConfigurationPropertiesFormat", + "description": "Network interface IP configuration properties." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IPConfiguration in a network interface." + }, + "NetworkInterfaceDnsSettings": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of DNS servers IP addresses. Use 'AzureProvidedDNS' to switch to azure provided DNS resolution. 'AzureProvidedDNS' value cannot be combined with other IPs, it must be the only value in dnsServers collection." + }, + "appliedDnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "If the VM that uses this NIC is part of an Availability Set, then this list will have the union of all DNS servers from all NICs that are part of the Availability Set. This property is what is configured on each of those VMs." + }, + "internalDnsNameLabel": { + "type": "string", + "description": "Relative DNS name for this NIC used for internal communications between VMs in the same virtual network." + }, + "internalFqdn": { + "type": "string", + "description": "Fully qualified DNS name supporting internal communications between VMs in the same virtual network." + }, + "internalDomainNameSuffix": { + "type": "string", + "description": "Even if internalDnsNameLabel is not specified, a DNS entry is created for the primary NIC of the VM. This DNS name can be constructed by concatenating the VM name with the value of internalDomainNameSuffix." + } + }, + "description": "DNS settings of a network interface." + }, + "NetworkInterfacePropertiesFormat": { + "properties": { + "virtualMachine": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of a virtual machine.", + "readOnly": true + }, + "networkSecurityGroup": { + "$ref": "./networkSecurityGroup.json#/definitions/NetworkSecurityGroup", + "description": "The reference of the NetworkSecurityGroup resource." + }, + "interfaceEndpoint": { + "readOnly": true, + "$ref": "./interfaceEndpoint.json#/definitions/InterfaceEndpoint", + "description": "A reference to the interface endpoint to which the network interface is linked." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "A list of IPConfigurations of the network interface." + }, + "tapConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "A list of TapConfigurations of the network interface." + }, + "dnsSettings": { + "$ref": "#/definitions/NetworkInterfaceDnsSettings", + "description": "The DNS settings in network interface." + }, + "macAddress": { + "type": "string", + "description": "The MAC address of the network interface." + }, + "primary": { + "type": "boolean", + "description": "Gets whether this is a primary network interface on a virtual machine." + }, + "enableAcceleratedNetworking": { + "type": "boolean", + "description": "If the network interface is accelerated networking enabled." + }, + "enableIPForwarding": { + "type": "boolean", + "description": "Indicates whether IP forwarding is enabled on this network interface." + }, + "hostedWorkloads": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "A list of references to linked BareMetal resources" + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the network interface resource." + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "NetworkInterface properties. " + }, + "NetworkInterface": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfacePropertiesFormat", + "description": "Properties of the network interface." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A network interface in a resource group." + }, + "NetworkInterfaceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterface" + }, + "description": "A list of network interfaces in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListNetworkInterface API service call." + }, + "NetworkInterfaceTapConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "A list of tap configurations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list tap configurations API service call." + }, + "NetworkInterfaceIPConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "A list of ip configurations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list ip configurations API service call." + }, + "NetworkInterfaceLoadBalancerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/LoadBalancer" + }, + "description": "A list of load balancers." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list ip configurations API service call." + }, + "EffectiveNetworkSecurityGroup": { + "properties": { + "networkSecurityGroup": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of network security group that is applied." + }, + "association": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroupAssociation", + "description": "Associated resources." + }, + "effectiveSecurityRules": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveNetworkSecurityRule" + }, + "description": "A collection of effective security rules." + }, + "tagMap": { + "type": "string", + "additionalProperties": { + "type":"array", + "items": { + "type": "string" + }, + "description": "List of IP Addresses within the tag (key)" + }, + "description": "Mapping of tags to list of IP Addresses included within the tag." + } + }, + "description": "Effective network security group." + }, + "EffectiveNetworkSecurityGroupAssociation": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of the subnet if assigned." + }, + "networkInterface": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of the network interface if assigned." + } + }, + "description": "The effective network security group association." + }, + "EffectiveNetworkSecurityRule": { + "properties": { + "name": { + "type": "string", + "description": "The name of the security rule specified by the user (if created by the user)." + }, + "protocol": { + "type": "string", + "description": "The network protocol this rule applies to. Possible values are: 'Tcp', 'Udp', and 'All'.", + "enum": [ + "Tcp", + "Udp", + "All" + ], + "x-ms-enum": { + "name": "EffectiveSecurityRuleProtocol", + "modelAsString": true + } + }, + "sourcePortRange": { + "type": "string", + "description": "The source port or range." + }, + "destinationPortRange": { + "type": "string", + "description": "The destination port or range." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The source port ranges. Expected values include a single integer between 0 and 65535, a range using '-' as seperator (e.g. 100-400), or an asterix (*)" + }, + "destinationPortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination port ranges. Expected values include a single integer between 0 and 65535, a range using '-' as seperator (e.g. 100-400), or an asterix (*)" + }, + "sourceAddressPrefix": { + "type": "string", + "description": "The source address prefix." + }, + "destinationAddressPrefix": { + "type": "string", + "description": "The destination address prefix." + }, + "sourceAddressPrefixes" : { + "type": "array", + "items": { + "type": "string" + }, + "description": "The source address prefixes. Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, AureLoadBalancer, Internet), System Tags, and the asterix (*)." + }, + "destinationAddressPrefixes" : { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination address prefixes. Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, AureLoadBalancer, Internet), System Tags, and the asterix (*)." + }, + "expandedSourceAddressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The expanded source address prefix." + }, + "expandedDestinationAddressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Expanded destination address prefix." + }, + "access": { + "type": "string", + "description": "Whether network traffic is allowed or denied. Possible values are: 'Allow' and 'Deny'.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "SecurityRuleAccess", + "modelAsString": true + } + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "The priority of the rule." + }, + "direction": { + "type": "string", + "description": "The direction of the rule. Possible values are: 'Inbound and Outbound'.", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "SecurityRuleDirection", + "modelAsString": true + } + } + }, + "description": "Effective network security rules." + }, + "EffectiveNetworkSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroup" + }, + "description": "A list of effective network security groups." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list effective network security groups API service call." + }, + "EffectiveRoute": { + "properties": { + "name": { + "type": "string", + "description": "The name of the user defined route. This is optional." + }, + "source": { + "type": "string", + "description": "Who created the route. Possible values are: 'Unknown', 'User', 'VirtualNetworkGateway', and 'Default'.", + "enum": [ + "Unknown", + "User", + "VirtualNetworkGateway", + "Default" + ], + "x-ms-enum": { + "name": "EffectiveRouteSource", + "modelAsString": true + } + }, + "state": { + "type": "string", + "description": "The value of effective route. Possible values are: 'Active' and 'Invalid'.", + "enum": [ + "Active", + "Invalid" + ], + "x-ms-enum": { + "name": "EffectiveRouteState", + "modelAsString": true + } + }, + "addressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The address prefixes of the effective routes in CIDR notation." + }, + "nextHopIpAddress": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The IP address of the next hop of the effective route." + }, + "nextHopType": { + "type": "string", + "description": "The type of Azure hop the packet should be sent to. Possible values are: 'VirtualNetworkGateway', 'VnetLocal', 'Internet', 'VirtualAppliance', and 'None'.", + "enum": [ + "VirtualNetworkGateway", + "VnetLocal", + "Internet", + "VirtualAppliance", + "None" + ], + "x-ms-enum": { + "name": "RouteNextHopType", + "modelAsString": true + } + } + }, + "description": "Effective Route" + }, + "EffectiveRouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveRoute" + }, + "description": "A list of effective routes." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list effective route API service call." + }, + "IPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "type": "string", + "description": "The private IP allocation method. Possible values are 'Static' and 'Dynamic'.", + "enum": [ + "Static", + "Dynamic" + ], + "x-ms-enum": { + "name": "IPAllocationMethod", + "modelAsString": true + } + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference of the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference of the public IP resource." + }, + "provisioningState": { + "type": "string", + "description": "Gets the provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of IP configuration." + }, + "IPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IPConfigurationPropertiesFormat", + "description": "Properties of the IP configuration" + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/networkProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/networkProfile.json new file mode 100644 index 000000000000..ce67c03177ac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/networkProfile.json @@ -0,0 +1,575 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles/{networkProfileName}": { + "delete": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_Delete", + "description": "Deletes the specified network profile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the NetworkProfile." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete network profile": { + "$ref": "./examples/NetworkProfileDelete.json" + } + }, + "x-ms-long-running-operation": false + }, + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_Get", + "description": "Gets the specified network profile in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the PublicIPPrefx." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + } + }, + "x-ms-examples": { + "Get network profile": { + "$ref": "./examples/NetworkProfileGetConfigOnly.json" + }, + "Get network profile with container network interfaces": { + "$ref": "./examples/NetworkProfileGetWithContainerNic.json" + } + } + }, + "put": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_CreateOrUpdate", + "description": "Creates or updates a network profile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network profile." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkProfile" + }, + "description": "Parameters supplied to the create or update network profile operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + } + }, + "x-ms-examples": { + "Create network profile defaults": { + "$ref": "./examples/NetworkProfileCreateConfigOnly.json" + } + }, + "x-ms-long-running-operation": false + }, + "patch": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_UpdateTags", + "description": "Updates network profile tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network profile." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network profile tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + } + }, + "x-ms-examples": { + "Update network profile tags": { + "$ref": "./examples/NetworkProfileUpdateTags.json" + } + }, + "x-ms-long-running-operation": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkProfiles": { + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_ListAll", + "description": "Gets all the network profiles in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkProfile resources.", + "schema": { + "$ref": "#/definitions/NetworkProfileListResult" + } + } + }, + "x-ms-examples": { + "List all network profilees": { + "$ref": "./examples/NetworkProfileListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles": { + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_List", + "description": "Gets all network profiles in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkProfile resources.", + "schema": { + "$ref": "#/definitions/NetworkProfileListResult" + } + } + }, + "x-ms-examples": { + "List resource group network profilees": { + "$ref": "./examples/NetworkProfileList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkProfilePropertiesFormat": { + "properties": { + "containerNetworkInterfaces": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterface" + }, + "description": "List of child container network interfaces." + }, + "containerNetworkInterfaceConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterfaceConfiguration" + }, + "description": "List of chid container network interface configurations." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network interface resource." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource." + } + }, + "description": "Network profile properties." + }, + "NetworkProfile": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkProfilePropertiesFormat", + "description": "Network profile properties." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network profile resource." + }, + "NetworkProfileListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkProfile" + }, + "description": "A list of network profiles that exist in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNetworkProfiles API service call." + }, + "ContainerNetworkInterfacePropertiesFormat": { + "properties": { + "containerNetworkInterfaceConfiguration": { + "$ref": "#/definitions/ContainerNetworkInterfaceConfiguration", + "description": "Container network interface configuration from which this container network interface is created." + }, + "container": { + "$ref": "#/definitions/Container", + "description": "Reference to the conatinaer to which this container network interface is attached." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterfaceIpConfiguration" + }, + "description": "Reference to the ip configuration on this container nic." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource." + } + } + }, + "ContainerNetworkInterface": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfacePropertiesFormat", + "description": "Container network interface properties." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Container network interface child resource." + }, + "ContainerNetworkInterfaceConfigurationPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/IPConfigurationProfile" + }, + "description": "A list of ip configurations of the container network interface configuration." + }, + "containerNetworkInterfaces": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A list of container network interfaces created from this container network interface configuration." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource." + } + }, + "description": "Container network interface configuration properties." + }, + "ContainerNetworkInterfaceConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfaceConfigurationPropertiesFormat", + "description": "Container network interface configuration properties." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Container network interface configruation child resource." + }, + "IPConfigurationProfilePropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference of the subnet resource to create a contatainer network interface ip configruation." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource." + } + }, + "description": "IP configruation profile properties." + }, + "IPConfigurationProfile": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IPConfigurationProfilePropertiesFormat", + "description": "Properties of the IP configuration profile." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration profile child resource." + }, + "Container": { + "properties": { }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Reference to container resource in remote resource provider." + }, + "ContainerNetworkInterfaceIpConfigurationPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource." + } + }, + "description": "Properties of the container network interface IP configuration." + }, + "ContainerNetworkInterfaceIpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfaceIpConfigurationPropertiesFormat", + "description": "Properties of the container network interface IP configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "description": "The ip configuration for a container network interface." + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/networkSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/networkSecurityGroup.json new file mode 100644 index 000000000000..56f365251c75 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/networkSecurityGroup.json @@ -0,0 +1,848 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}": { + "delete": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_Delete", + "description": "Deletes the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + } + }, + "x-ms-examples": { + "Delete network security group": { "$ref": "./examples/NetworkSecurityGroupDelete.json" } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_Get", + "description": "Gets the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + } + }, + "x-ms-examples": { + "Get network security group": { "$ref": "./examples/NetworkSecurityGroupGet.json" } + } + }, + "put": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_CreateOrUpdate", + "description": "Creates or updates a network security group in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + }, + "description": "Parameters supplied to the create or update network security group operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + } + }, + "x-ms-examples": { + "Create network security group": { "$ref": "./examples/NetworkSecurityGroupCreate.json" }, + "Create network security group with rule": { "$ref": "./examples/NetworkSecurityGroupCreateWithRule.json" } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_UpdateTags", + "description": "Updates a network security group tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network security group tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + } + }, + "x-ms-examples": { + "Update network security group tags": { "$ref": "./examples/NetworkSecurityGroupUpdateTags.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkSecurityGroups": { + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_ListAll", + "description": "Gets all network security groups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroupListResult" + } + } + }, + "x-ms-examples": { + "List all network security groups": { "$ref": "./examples/NetworkSecurityGroupListAll.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups": { + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_List", + "description": "Gets all network security groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroupListResult" + } + } + }, + "x-ms-examples": { + "List network security groups in resource group": { "$ref": "./examples/NetworkSecurityGroupList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules/{securityRuleName}": { + "delete": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_Delete", + "description": "Deletes the specified network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete network security rule from network security group": { "$ref": "./examples/NetworkSecurityGroupRuleDelete.json" } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_Get", + "description": "Get the specified network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + } + }, + "x-ms-examples": { + "Get network security rule in network security group": { "$ref": "./examples/NetworkSecurityGroupRuleGet.json" } + } + }, + "put": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_CreateOrUpdate", + "description": "Creates or updates a security rule in the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "name": "securityRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "Parameters supplied to the create or update network security rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + } + }, + "x-ms-examples": { + "Create security rule": { "$ref": "./examples/NetworkSecurityGroupRuleCreate.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_List", + "description": "Gets all security rules in a network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of SecurityRule resources.", + "schema": { + "$ref": "#/definitions/SecurityRuleListResult" + } + } + }, + "x-ms-examples": { + "List network security rules in network security group": { "$ref": "./examples/NetworkSecurityGroupRuleList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "DefaultSecurityRules_List", + "description": "Gets all default security rules in a network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of SecurityRule resources.", + "schema": { + "$ref": "#/definitions/SecurityRuleListResult" + } + } + }, + "x-ms-examples": { + "DefaultSecurityRuleList": { "$ref": "./examples/DefaultSecurityRuleList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules/{defaultSecurityRuleName}" : { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "DefaultSecurityRules_Get", + "description": "Get the specified default network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "defaultSecurityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the default security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + } + }, + "x-ms-examples": { + "DefaultSecurityRuleGet": { "$ref": "./examples/DefaultSecurityRuleGet.json" } + } + } + } + }, + "definitions": { + "SecurityRulePropertiesFormat": { + "properties": { + "description": { + "type": "string", + "description": "A description for this rule. Restricted to 140 chars." + }, + "protocol": { + "type": "string", + "description": "Network protocol this rule applies to. Possible values are 'Tcp', 'Udp', and '*'.", + "enum": [ + "Tcp", + "Udp", + "*" + ], + "x-ms-enum": { + "name": "SecurityRuleProtocol", + "modelAsString": true + } + }, + "sourcePortRange": { + "type": "string", + "description": "The source port or range. Integer or range between 0 and 65535. Asterix '*' can also be used to match all ports." + }, + "destinationPortRange": { + "type": "string", + "description": "The destination port or range. Integer or range between 0 and 65535. Asterix '*' can also be used to match all ports." + }, + "sourceAddressPrefix": { + "type": "string", + "description": "The CIDR or source IP range. Asterix '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If this is an ingress rule, specifies where network traffic originates from. " + }, + "sourceAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The CIDR or source IP ranges." + }, + "sourceApplicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "The application security group specified as source." + }, + "destinationAddressPrefix": { + "type": "string", + "description": "The destination address prefix. CIDR or destination IP range. Asterix '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used." + }, + "destinationAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination address prefixes. CIDR or destination IP ranges." + }, + "destinationApplicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "The application security group specified as destination." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The source port." + }, + "description": "The source port ranges." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The destination port." + }, + "description": "The destination port ranges." + }, + "access": { + "type": "string", + "description": "The network traffic is allowed or denied. Possible values are: 'Allow' and 'Deny'.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "SecurityRuleAccess", + "modelAsString": true + } + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "The priority of the rule. The value can be between 100 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule." + }, + "direction": { + "type": "string", + "description": "The direction of the rule. The direction specifies if rule will be evaluated on incoming or outcoming traffic. Possible values are: 'Inbound' and 'Outbound'.", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "SecurityRuleDirection", + "modelAsString": true + } + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "required": [ + "protocol", + "access", + "direction" + ], + "description": "Security rule resource." + }, + "SecurityRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityRulePropertiesFormat", + "description": "Properties of the security rule" + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Network security rule." + }, + "SecurityRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "The security rules in a network security group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSecurityRule API service call. Retrieves all security rules that belongs to a network security group." + }, + "NetworkSecurityGroupPropertiesFormat": { + "properties": { + "securityRules": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "A collection of security rules of the network security group." + }, + "defaultSecurityRules": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "The default security rules of network security group." + }, + "networkInterfaces": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "A collection of references to network interfaces." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the network security group resource." + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Network Security Group resource." + }, + "NetworkSecurityGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkSecurityGroupPropertiesFormat", + "description": "Properties of the network security group" + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "NetworkSecurityGroup resource." + }, + "NetworkSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkSecurityGroup" + }, + "description": "A list of NetworkSecurityGroup resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNetworkSecurityGroups API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/networkWatcher.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/networkWatcher.json new file mode 100644 index 000000000000..b74acc7db3d9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/networkWatcher.json @@ -0,0 +1,3648 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}": { + "put": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_CreateOrUpdate", + "description": "Creates or updates a network watcher in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkWatcher" + }, + "description": "Parameters that define the network watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create network watcher": { "$ref": "./examples/NetworkWatcherCreate.json" } + } + }, + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_Get", + "description": "Gets the specified network watcher by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get network watcher": { "$ref": "./examples/NetworkWatcherGet.json" } + } + }, + "delete": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_Delete", + "x-ms-long-running-operation": true, + "description": "Deletes the specified network watcher resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete network watcher": { "$ref": "./examples/NetworkWatcherDelete.json" } + } + }, + "patch": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_UpdateTags", + "description": "Updates a network watcher tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network watcher tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update network watcher tags": { "$ref": "./examples/NetworkWatcherUpdateTags.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers": { + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_List", + "description": "Gets all network watchers by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of network watcher resources.", + "schema": { + "$ref": "#/definitions/NetworkWatcherListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List network watchers": { "$ref": "./examples/NetworkWatcherList.json" } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkWatchers": { + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_ListAll", + "description": "Gets all network watchers by subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of network watcher resources.", + "schema": { + "$ref": "#/definitions/NetworkWatcherListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List all network watchers": { "$ref": "./examples/NetworkWatcherListAll.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/topology": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTopology", + "description": "Gets the current network topology by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TopologyParameters" + }, + "description": "Parameters that define the representation of topology." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the topology of resource group.", + "schema": { + "$ref": "#/definitions/Topology" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Topology": { + "$ref": "./examples/NetworkWatcherTopologyGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/ipFlowVerify": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_VerifyIPFlow", + "x-ms-long-running-operation": true, + "description": "Verify IP flow from the specified VM to a location given the currently configured NSG rules.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VerificationIPFlowParameters" + }, + "description": "Parameters that define the IP flow to be verified." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the result of IP flow verification.", + "schema": { + "$ref": "#/definitions/VerificationIPFlowResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/VerificationIPFlowResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Ip flow verify": { "$ref": "./examples/NetworkWatcherIpFlowVerify.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/nextHop": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetNextHop", + "x-ms-long-running-operation": true, + "description": "Gets the next hop from the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NextHopParameters" + }, + "description": "Parameters that define the source and destination endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the next hop from the VM.", + "schema": { + "$ref": "#/definitions/NextHopResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NextHopResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get next hop": { "$ref": "./examples/NetworkWatcherNextHopGet.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/securityGroupView": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetVMSecurityRules", + "x-ms-long-running-operation": true, + "description": "Gets the configured and effective security group rules on the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityGroupViewParameters" + }, + "description": "Parameters that define the VM to check security groups for." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns security group rules on the VM.", + "schema": { + "$ref": "#/definitions/SecurityGroupViewResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/SecurityGroupViewResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get security group view": { "$ref": "./examples/NetworkWatcherSecurityGroupViewGet.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}": { + "put": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Create", + "x-ms-long-running-operation": true, + "description": "Create and start a packet capture on the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PacketCapture" + }, + "description": "Parameters that define the create packet capture operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting packet capture session.", + "schema": { + "$ref": "#/definitions/PacketCaptureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create packet capture": { "$ref": "./examples/NetworkWatcherPacketCaptureCreate.json" } + } + }, + "get": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Get", + "description": "Gets a packet capture session by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a packet capture session.", + "schema": { + "$ref": "#/definitions/PacketCaptureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get packet capture": { "$ref": "./examples/NetworkWatcherPacketCaptureGet.json" } + } + }, + "delete": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Delete", + "x-ms-long-running-operation": true, + "description": "Deletes the specified packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete packet capture": { "$ref": "./examples/NetworkWatcherPacketCaptureDelete.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/stop": { + "post": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Stop", + "x-ms-long-running-operation": true, + "description": "Stops a specified packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the packet capture session." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop packet capture": { "$ref": "./examples/NetworkWatcherPacketCaptureStop.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/queryStatus": { + "post": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_GetStatus", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "description": "Query the status of a running packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of packet capture status.", + "schema": { + "$ref": "#/definitions/PacketCaptureQueryStatusResult" + } + }, + "202": { + "description": "Accepted query status of packet capture.", + "schema": { + "$ref": "#/definitions/PacketCaptureQueryStatusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query packet capture status": { "$ref": "./examples/NetworkWatcherPacketCaptureQueryStatus.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures": { + "get": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_List", + "description": "Lists all packet capture sessions within the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful packet capture enumeration request.", + "schema": { + "$ref": "#/definitions/PacketCaptureListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List packet captures": { "$ref": "./examples/NetworkWatcherPacketCapturesList.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/troubleshoot": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTroubleshooting", + "x-ms-long-running-operation": true, + "description": "Initiate troubleshooting on a specified resource", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TroubleshootingParameters" + }, + "description": "Parameters that define the resource to troubleshoot." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful troubleshooting request", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "202": { + "description": "Accepted get troubleshooting request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get troubleshooting": { "$ref": "./examples/NetworkWatcherTroubleshootGet.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryTroubleshootResult": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTroubleshootingResult", + "x-ms-long-running-operation": true, + "description": "Get the last completed troubleshooting result on a specified resource", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QueryTroubleshootingParameters" + }, + "description": "Parameters that define the resource to query the troubleshooting result." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful get troubleshooting result request", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "202": { + "description": "Accepted get troubleshooting result request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get troubleshoot result": { "$ref": "./examples/NetworkWatcherTroubleshootResultQuery.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/configureFlowLog": { + "post": { + "tags": [ + "NetworkWatchers", + "TrafficAnalytics" + ], + "operationId": "NetworkWatchers_SetFlowLogConfiguration", + "x-ms-long-running-operation": true, + "description": "Configures flow log and traffic analytics (optional) on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLogInformation" + }, + "description": "Parameters that define the configuration of flow log." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for setting flow log and traffic analytics (optional) configuration.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Configure flow log": { "$ref": "./examples/NetworkWatcherFlowLogConfigure.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryFlowLogStatus": { + "post": { + "tags": [ + "NetworkWatchers", + "TrafficAnalytics" + ], + "operationId": "NetworkWatchers_GetFlowLogStatus", + "x-ms-long-running-operation": true, + "description": "Queries status of flow log and traffic analytics (optional) on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLogStatusParameters" + }, + "description": "Parameters that define a resource to query flow log and traffic analytics (optional) status." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for query flow log and traffic analytics (optional) status.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get flow log status": { "$ref": "./examples/NetworkWatcherFlowLogStatusQuery.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectivityCheck": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_CheckConnectivity", + "x-ms-long-running-operation": true, + "description": "Verifies the possibility of establishing a direct TCP connection from a virtual machine to a given endpoint including another VM or an arbitrary remote server.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectivityParameters" + }, + "description": "Parameters that determine how the connectivity check will be performed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for checking connectivity.", + "schema": { + "$ref": "#/definitions/ConnectivityInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ConnectivityInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Check connectivity": { "$ref": "./examples/NetworkWatcherConnectivityCheck.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/azureReachabilityReport": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetAzureReachabilityReport", + "x-ms-long-running-operation": true, + "description": "Gets the relative latency score for internet service providers from a specified location to Azure regions.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureReachabilityReportParameters" + }, + "description": "Parameters that determine Azure reachability report configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for Azure reachability report.", + "schema": { + "$ref": "#/definitions/AzureReachabilityReport" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AzureReachabilityReport" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Reachability Report": { + "$ref": "./examples/NetworkWatcherAzureReachabilityReportGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/availableProvidersList": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_ListAvailableProviders", + "x-ms-long-running-operation": true, + "description": "Lists all available internet service providers for a specified Azure region.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AvailableProvidersListParameters" + }, + "description": "Parameters that scope the list of available providers." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for list of available providers.", + "schema": { + "$ref": "#/definitions/AvailableProvidersList" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AvailableProvidersList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Available Providers List": { + "$ref": "./examples/NetworkWatcherAvailableProvidersListGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}": { + "put": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_CreateOrUpdate", + "x-ms-long-running-operation": true, + "description": "Create or update a connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionMonitor" + }, + "description": "Parameters that define the operation to create a connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create connection monitor": { "$ref": "./examples/NetworkWatcherConnectionMonitorCreate.json" } + } + }, + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Get", + "description": "Gets a connection monitor by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get connection monitor": { "$ref": "./examples/NetworkWatcherConnectionMonitorGet.json" } + } + }, + "delete": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Delete", + "x-ms-long-running-operation": true, + "description": "Deletes the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete connection monitor": { "$ref": "./examples/NetworkWatcherConnectionMonitorDelete.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/stop": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Stop", + "x-ms-long-running-operation": true, + "description": "Stops the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop connection monitor": { "$ref": "./examples/NetworkWatcherConnectionMonitorStop.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/start": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Start", + "x-ms-long-running-operation": true, + "description": "Starts the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation starts the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Start connection monitor": { "$ref": "./examples/NetworkWatcherConnectionMonitorStart.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/query": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Query", + "x-ms-long-running-operation": true, + "description": "Query a snapshot of the most recent connection states.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "202": { + "description": "Accepted query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query connection monitor": { "$ref": "./examples/NetworkWatcherConnectionMonitorQuery.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors": { + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_List", + "description": "Lists all connection monitors for the specified Network Watcher.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful connection monitor enumeration request.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List connection monitors": { "$ref": "./examples/NetworkWatcherConnectionMonitorList.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/networkConfigurationDiagnostic": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetNetworkConfigurationDiagnostic", + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "description": "Get network configuration diagnostic.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticParameters" + }, + "description": "Parameters to get network configuration diagnostic." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the result of network condifuration diagnostic.", + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Network configuration diagnostic": { "$ref": "./examples/NetworkWatcherNetworkConfigurationDiagnostic.json" } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "The error object.", + "properties": { + "error": { + "title": "Error", + "$ref": "./network.json#/definitions/ErrorDetails" + } + } + }, + "NetworkWatcher": { + "properties": { + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkWatcherPropertiesFormat" + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network watcher in a resource group." + }, + "NetworkWatcherPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "description": "The provisioning state of the resource." + } + }, + "description": "The network watcher properties." + }, + "NetworkWatcherListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkWatcher" + } + } + }, + "description": "List of network watcher resources." + }, + "TopologyParameters": { + "properties": { + "targetResourceGroupName": { + "type": "string", + "description": "The name of the target resource group to perform topology on." + }, + "targetVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the Virtual Network resource." + }, + "targetSubnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the Subnet resource." + } + }, + "description": "Parameters that define the representation of topology." + }, + "Topology": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "GUID representing the operation id." + }, + "createdDateTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The datetime when the topology was initially created for the resource group." + }, + "lastModified": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The datetime when the topology was last modified." + }, + "resources": { + "type": "array", + "items": { + "$ref": "#/definitions/TopologyResource" + } + } + }, + "description": "Topology of the specified resource group." + }, + "TopologyResource": { + "properties": { + "name": { + "type": "string", + "description": "Name of the resource." + }, + "id": { + "type": "string", + "description": "ID of the resource." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "associations": { + "type": "array", + "description": "Holds the associations the resource has with other resources in the resource group.", + "items": { + "$ref": "#/definitions/TopologyAssociation" + } + } + }, + "description": "The network resource topology information for the given resource group." + }, + "TopologyAssociation": { + "properties": { + "name": { + "type": "string", + "description": "The name of the resource that is associated with the parent resource." + }, + "resourceId": { + "type": "string", + "description": "The ID of the resource that is associated with the parent resource." + }, + "associationType": { + "type": "string", + "enum": [ + "Associated", + "Contains" + ], + "x-ms-enum": { + "name": "AssociationType", + "modelAsString": true + }, + "description": "The association type of the child resource to the parent resource." + } + }, + "description": "Resources that have an association with the parent resource." + }, + "VerificationIPFlowParameters": { + "description": "Parameters that define the IP flow to be verified.", + "required": [ + "targetResourceId", + "direction", + "protocol", + "localPort", + "remotePort", + "localIPAddress", + "remoteIPAddress" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The ID of the target resource to perform next-hop on." + }, + "direction": { + "type": "string", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "Direction", + "modelAsString": true + }, + "description": "The direction of the packet represented as a 5-tuple." + }, + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "IpFlowProtocol", + "modelAsString": true + }, + "description": "Protocol to be verified on." + }, + "localPort": { + "type": "string", + "description": "The local port. Acceptable values are a single integer in the range (0-65535). Support for * for the source port, which depends on the direction." + }, + "remotePort": { + "type": "string", + "description": "The remote port. Acceptable values are a single integer in the range (0-65535). Support for * for the source port, which depends on the direction." + }, + "localIPAddress": { + "type": "string", + "description": "The local IP address. Acceptable values are valid IPv4 addresses." + }, + "remoteIPAddress": { + "type": "string", + "description": "The remote IP address. Acceptable values are valid IPv4 addresses." + }, + "targetNicResourceId": { + "type": "string", + "description": "The NIC ID. (If VM has multiple NICs and IP forwarding is enabled on any of them, then this parameter must be specified. Otherwise optional)." + } + } + }, + "VerificationIPFlowResult": { + "description": "Results of IP flow verification on the target resource.", + "properties": { + "access": { + "type": "string", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "Access", + "modelAsString": true + }, + "description": "Indicates whether the traffic is allowed or denied." + }, + "ruleName": { + "type": "string", + "description": "Name of the rule. If input is not matched against any security rule, it is not displayed." + } + } + }, + "NextHopParameters": { + "description": "Parameters that define the source and destination endpoint.", + "required": [ + "targetResourceId", + "sourceIPAddress", + "destinationIPAddress" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The resource identifier of the target resource against which the action is to be performed." + }, + "sourceIPAddress": { + "type": "string", + "description": "The source IP address." + }, + "destinationIPAddress": { + "type": "string", + "description": "The destination IP address." + }, + "targetNicResourceId": { + "type": "string", + "description": "The NIC ID. (If VM has multiple NICs and IP forwarding is enabled on any of the nics, then this parameter must be specified. Otherwise optional)." + } + } + }, + "NextHopResult": { + "description": "The information about next hop from the specified VM.", + "properties": { + "nextHopType": { + "type": "string", + "enum": [ + "Internet", + "VirtualAppliance", + "VirtualNetworkGateway", + "VnetLocal", + "HyperNetGateway", + "None" + ], + "x-ms-enum": { + "name": "NextHopType", + "modelAsString": true + }, + "description": "Next hop type." + }, + "nextHopIpAddress": { + "type": "string", + "description": "Next hop IP Address" + }, + "routeTableId": { + "type": "string", + "description": "The resource identifier for the route table associated with the route being returned. If the route being returned does not correspond to any user created routes then this field will be the string 'System Route'." + } + } + }, + "SecurityGroupViewParameters": { + "description": "Parameters that define the VM to check security groups for.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "ID of the target VM." + } + } + }, + "SecurityGroupViewResult": { + "description": "The information about security rules applied to the specified VM.", + "properties": { + "networkInterfaces": { + "type": "array", + "description": "List of network interfaces on the specified VM.", + "items": { + "$ref": "#/definitions/SecurityGroupNetworkInterface" + } + } + } + }, + "SecurityGroupNetworkInterface": { + "description": "Network interface and all its associated security rules.", + "properties": { + "id": { + "type": "string", + "description": "ID of the network interface." + }, + "securityRuleAssociations": { + "$ref": "#/definitions/SecurityRuleAssociations" + } + } + }, + "SecurityRuleAssociations": { + "description": "All security rules associated with the network interface.", + "properties": { + "networkInterfaceAssociation": { + "$ref": "#/definitions/NetworkInterfaceAssociation" + }, + "subnetAssociation": { + "$ref": "#/definitions/SubnetAssociation" + }, + "defaultSecurityRules": { + "type": "array", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + }, + "description": "Collection of default security rules of the network security group." + }, + "effectiveSecurityRules": { + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/EffectiveNetworkSecurityRule" + }, + "description": "Collection of effective security rules." + } + } + }, + "NetworkInterfaceAssociation": { + "description": "Network interface and its custom security rules.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Network interface ID." + }, + "securityRules": { + "type": "array", + "description": "Collection of custom security rules.", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + } + } + } + }, + "SubnetAssociation": { + "description": "Network interface and its custom security rules.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Subnet ID." + }, + "securityRules": { + "type": "array", + "description": "Collection of custom security rules.", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + } + } + } + }, + "PacketCapture": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PacketCaptureParameters" + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the create packet capture operation." + }, + "PacketCaptureParameters": { + "properties": { + "target": { + "type": "string", + "description": "The ID of the targeted resource, only VM is currently supported." + }, + "bytesToCapturePerPacket": { + "type": "integer", + "default": 0, + "description": "Number of bytes captured per packet, the remaining bytes are truncated." + }, + "totalBytesPerSession": { + "type": "integer", + "default": 1073741824, + "description": "Maximum size of the capture output." + }, + "timeLimitInSeconds": { + "type": "integer", + "default": 18000, + "description": "Maximum duration of the capture session in seconds." + }, + "storageLocation": { + "$ref": "#/definitions/PacketCaptureStorageLocation" + }, + "filters": { + "type": "array", + "items": { + "$ref": "#/definitions/PacketCaptureFilter" + } + } + }, + "required": [ + "target", + "storageLocation" + ], + "description": "Parameters that define the create packet capture operation." + }, + "PacketCaptureStorageLocation": { + "properties": { + "storageId": { + "type": "string", + "description": "The ID of the storage account to save the packet capture session. Required if no local file path is provided." + }, + "storagePath": { + "type": "string", + "description": "The URI of the storage path to save the packet capture. Must be a well-formed URI describing the location to save the packet capture." + }, + "filePath": { + "type": "string", + "description": "A valid local path on the targeting VM. Must include the name of the capture file (*.cap). For linux virtual machine it must start with /var/captures. Required if no storage ID is provided, otherwise optional." + } + }, + "description": "Describes the storage location for a packet capture session." + }, + "PacketCaptureFilter": { + "properties": { + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP", + "Any" + ], + "x-ms-enum": { + "name": "PcProtocol", + "modelAsString": true + }, + "default": "Any", + "description": "Protocol to be filtered on." + }, + "localIPAddress": { + "type": "string", + "description": "Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5\"? for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "remoteIPAddress": { + "type": "string", + "description": "Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "localPort": { + "type": "string", + "description": "Local port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "remotePort": { + "type": "string", + "description": "Remote port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + } + }, + "description": "Filter that is applied to packet capture request. Multiple filters can be applied." + }, + "PacketCaptureListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PacketCaptureResult" + }, + "description": "Information about packet capture sessions." + } + }, + "description": "List of packet capture sessions." + }, + "PacketCaptureResult": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the packet capture session." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the packet capture operation." + }, + "etag": { + "type": "string", + "default": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PacketCaptureResultProperties" + } + }, + "description": "Information about packet capture session." + }, + "PacketCaptureResultProperties": { + "properties": { + "provisioningState": { + "type": "string", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "description": "The provisioning state of the packet capture session." + } + }, + "allOf": [ + { + "$ref": "#/definitions/PacketCaptureParameters" + } + ], + "description": "Describes the properties of a packet capture session." + }, + "PacketCaptureQueryStatusResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the packet capture resource." + }, + "id": { + "type": "string", + "description": "The ID of the packet capture resource." + }, + "captureStartTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the packet capture session." + }, + "packetCaptureStatus": { + "type": "string", + "enum": [ + "NotStarted", + "Running", + "Stopped", + "Error", + "Unknown" + ], + "x-ms-enum": { + "name": "PcStatus", + "modelAsString": true + }, + "description": "The status of the packet capture session." + }, + "stopReason": { + "type": "string", + "description": "The reason the current packet capture session was stopped." + }, + "packetCaptureError": { + "type": "array", + "description": "List of errors of packet capture session.", + "items": { + "type": "string", + "enum": [ + "InternalError", + "AgentStopped", + "CaptureFailed", + "LocalFileFailed", + "StorageFailed" + ], + "x-ms-enum": { + "name": "PcError", + "modelAsString": true + } + } + } + }, + "description": "Status of packet capture session." + }, + "TroubleshootingParameters": { + "description": "Parameters that define the resource to troubleshoot.", + "required": [ + "targetResourceId", + "properties" + ], + "properties": { + "targetResourceId": { + "description": "The target resource to troubleshoot.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TroubleshootingProperties" + } + } + }, + "QueryTroubleshootingParameters": { + "description": "Parameters that define the resource to query the troubleshooting result.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "description": "The target resource ID to query the troubleshooting result.", + "type": "string" + } + } + }, + "TroubleshootingProperties": { + "description": "Storage location provided for troubleshoot.", + "required": [ + "storageId", + "storagePath" + ], + "properties": { + "storageId": { + "description": "The ID for the storage account to save the troubleshoot result.", + "type": "string" + }, + "storagePath": { + "description": "The path to the blob to save the troubleshoot result in.", + "type": "string" + } + } + }, + "TroubleshootingResult": { + "description": "Troubleshooting information gained from specified resource.", + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the troubleshooting." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the troubleshooting." + }, + "code": { + "type": "string", + "description": "The result code of the troubleshooting." + }, + "results": { + "type": "array", + "description": "Information from troubleshooting.", + "items": { + "$ref": "#/definitions/TroubleshootingDetails" + } + } + } + }, + "TroubleshootingDetails": { + "description": "Information gained from troubleshooting of specified resource.", + "properties": { + "id": { + "type": "string", + "description": "The id of the get troubleshoot operation." + }, + "reasonType": { + "type": "string", + "description": "Reason type of failure." + }, + "summary": { + "type": "string", + "description": "A summary of troubleshooting." + }, + "detail": { + "type": "string", + "description": "Details on troubleshooting results." + }, + "recommendedActions": { + "type": "array", + "description": "List of recommended actions.", + "items": { + "$ref": "#/definitions/TroubleshootingRecommendedActions" + } + } + } + }, + "TroubleshootingRecommendedActions": { + "description": "Recommended actions based on discovered issues.", + "properties": { + "actionId": { + "description": "ID of the recommended action.", + "type": "string" + }, + "actionText": { + "description": "Description of recommended actions.", + "type": "string" + }, + "actionUri": { + "description": "The uri linking to a documentation for the recommended troubleshooting actions.", + "type": "string" + }, + "actionUriText": { + "description": "The information from the URI for the recommended troubleshooting actions.", + "type": "string" + } + } + }, + "FlowLogProperties": { + "description": "Parameters that define the configuration of flow log.", + "required": [ + "storageId", + "enabled" + ], + "properties": { + "storageId": { + "description": "ID of the storage account which is used to store the flow log.", + "type": "string" + }, + "enabled": { + "description": "Flag to enable/disable flow logging.", + "type": "boolean" + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicyParameters" + }, + "format": { + "$ref": "#/definitions/FlowLogFormatParameters" + } + } + }, + "FlowLogStatusParameters": { + "description": "Parameters that define a resource to query flow log and traffic analytics (optional) status.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "description": "The target resource where getting the flow log and traffic analytics (optional) status.", + "type": "string" + } + } + }, + "RetentionPolicyParameters": { + "description": "Parameters that define the retention policy for flow log.", + "properties": { + "days": { + "description": "Number of days to retain flow log records.", + "type": "integer", + "default": 0 + }, + "enabled": { + "description": "Flag to enable/disable retention.", + "type": "boolean", + "default": false + } + } + }, + "FlowLogFormatParameters": { + "description": "Parameters that define the flow log format.", + "properties": { + "type": { + "type": "string", + "description": "The file type of flow log.", + "enum": [ + "JSON" + ], + "x-ms-enum": { + "name": "FlowLogFormatType", + "modelAsString": true + } + }, + "version": { + "description": "The version (revision) of the flow log.", + "type": "integer", + "default": 0 + } + } + }, + "FlowLogInformation": { + "description": "Information on the configuration of flow log and traffic analytics (optional) .", + "required": [ + "targetResourceId", + "properties" + ], + "properties": { + "targetResourceId": { + "description": "The ID of the resource to configure for flow log and traffic analytics (optional) .", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FlowLogProperties" + }, + "flowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsProperties" + } + } + }, + "TrafficAnalyticsProperties": { + "description": "Parameters that define the configuration of traffic analytics.", + "required": [ + "networkWatcherFlowAnalyticsConfiguration" + ], + "properties": { + "networkWatcherFlowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsConfigurationProperties" + } + } + }, + "TrafficAnalyticsConfigurationProperties": { + "description": "Parameters that define the configuration of traffic analytics.", + "required": [ + "enabled", + "workspaceId", + "workspaceRegion", + "workspaceResourceId" + ], + "properties": { + "enabled": { + "description": "Flag to enable/disable traffic analytics.", + "type": "boolean" + }, + "workspaceId": { + "description": "The resource guid of the attached workspace", + "type": "string" + }, + "workspaceRegion": { + "description": "The location of the attached workspace", + "type": "string" + }, + "workspaceResourceId": { + "description": "Resource Id of the attached workspace ", + "type": "string" + }, + "trafficAnalyticsInterval": { + "description": "The interval in minutes which would decide how frequently TA service should do flow analytics", + "type": "integer" + } + } + }, + "ConnectivityParameters": { + "description": "Parameters that determine how the connectivity check will be performed.", + "required": [ + "source", + "destination" + ], + "properties": { + "source": { + "$ref": "#/definitions/ConnectivitySource" + }, + "destination": { + "$ref": "#/definitions/ConnectivityDestination" + }, + "protocol": { + "type": "string", + "description": "Network protocol.", + "enum": [ + "Tcp", + "Http", + "Https", + "Icmp" + ], + "x-ms-enum": { + "name": "Protocol", + "modelAsString": true + } + }, + "protocolConfiguration": { + "$ref": "#/definitions/ProtocolConfiguration" + } + } + }, + "ConnectivitySource": { + "description": "Parameters that define the source of the connection.", + "required": [ + "resourceId" + ], + "properties": { + "resourceId": { + "description": "The ID of the resource from which a connectivity check will be initiated.", + "type": "string" + }, + "port": { + "description": "The source port from which a connectivity check will be performed.", + "type": "integer" + } + } + }, + "ConnectivityDestination": { + "description": "Parameters that define destination of connection.", + "properties": { + "resourceId": { + "description": "The ID of the resource to which a connection attempt will be made.", + "type": "string" + }, + "address": { + "description": "The IP address or URI the resource to which a connection attempt will be made.", + "type": "string" + }, + "port": { + "description": "Port on which check connectivity will be performed.", + "type": "integer" + } + } + }, + "ConnectivityInformation": { + "description": "Information on the connectivity status.", + "properties": { + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "#/definitions/ConnectivityHop" + } + }, + "connectionStatus": { + "readOnly": true, + "type": "string", + "enum": [ + "Unknown", + "Connected", + "Disconnected", + "Degraded" + ], + "x-ms-enum": { + "name": "ConnectionStatus", + "modelAsString": true + }, + "description": "The connection status." + }, + "avgLatencyInMs": { + "description": "Average latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "minLatencyInMs": { + "description": "Minimum latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "maxLatencyInMs": { + "description": "Maximum latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "probesSent": { + "description": "Total number of probes sent.", + "readOnly": true, + "type": "integer" + }, + "probesFailed": { + "description": "Number of failed probes.", + "readOnly": true, + "type": "integer" + } + } + }, + "ConnectivityHop": { + "description": "Information about a hop between the source and the destination.", + "properties": { + "type": { + "description": "The type of the hop.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "The ID of the hop.", + "readOnly": true, + "type": "string" + }, + "address": { + "description": "The IP address of the hop.", + "readOnly": true, + "type": "string" + }, + "resourceId": { + "description": "The ID of the resource corresponding to this hop.", + "readOnly": true, + "type": "string" + }, + "nextHopIds": { + "readOnly": true, + "type": "array", + "description": "List of next hop identifiers.", + "items": { + "type": "string" + } + }, + "issues": { + "readOnly": true, + "type": "array", + "description": "List of issues.", + "items": { + "$ref": "#/definitions/ConnectivityIssue" + } + } + } + }, + "ConnectivityIssue": { + "description": "Information about an issue encountered in the process of checking for connectivity.", + "properties": { + "origin": { + "readOnly": true, + "type": "string", + "enum": [ + "Local", + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "Origin", + "modelAsString": true + }, + "description": "The origin of the issue." + }, + "severity": { + "readOnly": true, + "type": "string", + "enum": [ + "Error", + "Warning" + ], + "x-ms-enum": { + "name": "Severity", + "modelAsString": true + }, + "description": "The severity of the issue." + }, + "type": { + "readOnly": true, + "type": "string", + "enum": [ + "Unknown", + "AgentStopped", + "GuestFirewall", + "DnsResolution", + "SocketBind", + "NetworkSecurityRule", + "UserDefinedRoute", + "PortThrottled", + "Platform" + ], + "x-ms-enum": { + "name": "IssueType", + "modelAsString": true + }, + "description": "The type of issue." + }, + "context": { + "readOnly": true, + "type": "array", + "description": "Provides additional context on the issue.", + "items": { + "$ref": "#/definitions/IssueContext" + } + } + } + }, + "IssueContext": { + "description": "A key-value pair that provides additional context on the issue.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "ProtocolConfiguration": { + "description": "Configuration of the protocol.", + "properties": { + "HTTPConfiguration": { + "$ref": "#/definitions/HTTPConfiguration" + } + } + }, + "HTTPConfiguration": { + "properties": { + "method": { + "type": "string", + "description": "HTTP method.", + "enum": [ + "Get" + ], + "x-ms-enum": { + "name": "HTTPMethod", + "modelAsString": true + } + }, + "headers": { + "type": "array", + "description": "List of HTTP headers.", + "items": { + "$ref": "#/definitions/HTTPHeader" + } + }, + "validStatusCodes": { + "type": "array", + "items": { + "type": "integer" + }, + "description": "Valid status codes." + } + }, + "description": "HTTP configuration of the connectivity check." + }, + "HTTPHeader": { + "properties": { + "name": { + "type": "string", + "description": "The name in HTTP header." + }, + "value": { + "type": "string", + "description": "The value in HTTP header." + } + }, + "description": "Describes the HTTP header." + }, + "AzureReachabilityReportParameters": { + "properties": { + "providerLocation": { + "$ref": "#/definitions/AzureReachabilityReportLocation" + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Internet service providers." + }, + "azureLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional Azure regions to scope the query to." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time for the Azure reachability report." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time for the Azure reachability report." + } + }, + "required": [ + "providerLocation", + "startTime", + "endTime" + ], + "description": "Geographic and time constraints for Azure reachability report." + }, + "AzureReachabilityReportLocation": { + "properties": { + "country": { + "type": "string", + "description": "The name of the country." + }, + "state": { + "type": "string", + "description": "The name of the state." + }, + "city": { + "type": "string", + "description": "The name of the city or town." + } + }, + "required": [ + "country" + ], + "description": "Parameters that define a geographic location." + }, + "AzureReachabilityReport": { + "properties": { + "aggregationLevel": { + "type": "string", + "description": "The aggregation level of Azure reachability report. Can be Country, State or City." + }, + "providerLocation": { + "$ref": "#/definitions/AzureReachabilityReportLocation" + }, + "reachabilityReport": { + "type": "array", + "description": "List of Azure reachability report items.", + "items": { + "$ref": "#/definitions/AzureReachabilityReportItem" + } + } + }, + "required": [ + "aggregationLevel", + "providerLocation", + "reachabilityReport" + ], + "description": "Azure reachability report details." + }, + "AzureReachabilityReportItem": { + "properties": { + "provider": { + "type": "string", + "description": "The Internet service provider." + }, + "azureLocation": { + "type": "string", + "description": "The Azure region." + }, + "latencies": { + "type": "array", + "description": "List of latency details for each of the time series.", + "items": { + "$ref": "#/definitions/AzureReachabilityReportLatencyInfo" + } + } + }, + "description": "Azure reachability report details for a given provider location." + }, + "AzureReachabilityReportLatencyInfo": { + "properties": { + "timeStamp": { + "type": "string", + "format": "date-time", + "description": "The time stamp." + }, + "score": { + "type": "integer", + "description": "The relative latency score between 1 and 100, higher values indicating a faster connection.", + "minimum": 1, + "maximum": 100 + } + }, + "description": "Details on latency for a time series." + }, + "AvailableProvidersListParameters": { + "properties": { + "azureLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Azure regions." + }, + "country": { + "type": "string", + "description": "The country for available providers list." + }, + "state": { + "type": "string", + "description": "The state for available providers list." + }, + "city": { + "type": "string", + "description": "The city or town for available providers list." + } + }, + "description": "Constraints that determine the list of available Internet service providers." + }, + "AvailableProvidersList": { + "properties": { + "countries": { + "type": "array", + "description": "List of available countries.", + "items": { + "$ref": "#/definitions/AvailableProvidersListCountry" + } + } + }, + "required": [ + "countries" + ], + "description": "List of available countries with details." + }, + "AvailableProvidersListCountry": { + "properties": { + "countryName": { + "type": "string", + "description": "The country name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + }, + "states": { + "type": "array", + "description": "List of available states in the country.", + "items": { + "$ref": "#/definitions/AvailableProvidersListState" + } + } + }, + "description": "Country details." + }, + "AvailableProvidersListState": { + "properties": { + "stateName": { + "type": "string", + "description": "The state name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + }, + "cities": { + "type": "array", + "description": "List of available cities or towns in the state.", + "items": { + "$ref": "#/definitions/AvailableProvidersListCity" + } + } + }, + "description": "State details." + }, + "AvailableProvidersListCity": { + "properties": { + "cityName": { + "type": "string", + "description": "The city or town name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + } + }, + "description": "City or town details." + }, + "ConnectionMonitor": { + "properties": { + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorParameters" + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorParameters": { + "properties": { + "source": { + "$ref": "#/definitions/ConnectionMonitorSource" + }, + "destination": { + "$ref": "#/definitions/ConnectionMonitorDestination" + }, + "autoStart": { + "type": "boolean", + "default": true, + "description": "Determines if the connection monitor will start automatically once created." + }, + "monitoringIntervalInSeconds": { + "type": "integer", + "default": 60, + "description": "Monitoring interval in seconds." + } + }, + "required": [ + "source", + "destination" + ], + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorSource": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the source by connection monitor." + }, + "port": { + "type": "integer", + "description": "The source port used by connection monitor." + } + }, + "required": [ + "resourceId" + ], + "description": "Describes the source of connection monitor." + }, + "ConnectionMonitorDestination": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the destination by connection monitor." + }, + "address": { + "type": "string", + "description": "Address of the connection monitor destination (IP or domain name)." + }, + "port": { + "type": "integer", + "description": "The destination port used by connection monitor." + } + }, + "description": "Describes the destination of connection monitor." + }, + "ConnectionMonitorListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionMonitorResult" + }, + "description": "Information about connection monitors." + } + }, + "description": "List of connection monitors." + }, + "ConnectionMonitorResult": { + "x-ms-azure-resource": true, + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the connection monitor." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the connection monitor." + }, + "etag": { + "type": "string", + "default": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Connection monitor type." + }, + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorResultProperties" + } + }, + "description": "Information about the connection monitor." + }, + "ConnectionMonitorResultProperties": { + "properties": { + "provisioningState": { + "type": "string", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "description": "The provisioning state of the connection monitor." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The date and time when the connection monitor was started." + }, + "monitoringStatus": { + "type": "string", + "description": "The monitoring status of the connection monitor." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ConnectionMonitorParameters" + } + ], + "description": "Describes the properties of a connection monitor." + }, + "ConnectionMonitorQueryResult": { + "properties": { + "sourceStatus": { + "type": "string", + "enum": [ + "Uknown", + "Active", + "Inactive" + ], + "x-ms-enum": { + "name": "ConnectionMonitorSourceStatus", + "modelAsString": true + }, + "description": "Status of connection monitor source." + }, + "states": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionStateSnapshot" + }, + "description": "Information about connection states." + } + }, + "description": "List of connection states snaphots." + }, + "ConnectionStateSnapshot": { + "properties": { + "connectionState": { + "type": "string", + "enum": [ + "Reachable", + "Unreachable", + "Unknown" + ], + "x-ms-enum": { + "name": "ConnectionState", + "modelAsString": true + }, + "description": "The connection state." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the connection snapshot." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the connection snapshot." + }, + "evaluationState": { + "type": "string", + "enum": [ + "NotStarted", + "InProgress", + "Completed" + ], + "x-ms-enum": { + "name": "EvaluationState", + "modelAsString": true + }, + "description": "Connectivity analysis evaluation state." + }, + "avgLatencyInMs": { + "type": "integer", + "description": "Average latency in ms." + }, + "minLatencyInMs": { + "type": "integer", + "description": "Minimum latency in ms." + }, + "maxLatencyInMs": { + "type": "integer", + "description": "Maximum latency in ms." + }, + "probesSent": { + "type": "integer", + "description": "The number of sent probes." + }, + "probesFailed": { + "type": "integer", + "description": "The number of failed probes." + }, + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "#/definitions/ConnectivityHop" + } + } + }, + "description": "Connection state snapshot." + }, + "NetworkConfigurationDiagnosticParameters": { + "description": "Parameters to get network configuration diagnostic.", + "required": [ + "targetResourceId", + "profiles" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The ID of the target resource to perform network configuration diagnostic. Valid options are VM, NetworkInterface, VMSS/NetworkInterface and Application Gateway." + }, + "verbosityLevel": { + "type": "string", + "enum": [ + "Normal", + "Minimum", + "Full" + ], + "x-ms-enum": { + "name": "VerbosityLevel", + "modelAsString": true + }, + "description": "Verbosity level. Accepted values are 'Normal', 'Minimum', 'Full'." + }, + "profiles": { + "type": "array", + "description": "List of network configuration diagnostic profiles.", + "items": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticProfile" + } + } + } + }, + "NetworkConfigurationDiagnosticProfile": { + "description": "Parameters to compare with network configuration.", + "required": [ + "direction", + "protocol", + "source", + "destination", + "destinationPort" + ], + "properties": { + "direction": { + "type": "string", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "Direction", + "modelAsString": true + }, + "description": "The direction of the traffic. Accepted values are 'Inbound' and 'Outbound'." + }, + "protocol": { + "type": "string", + "description": "Protocol to be verified on. Accepted values are '*', TCP, UDP." + }, + "source": { + "type": "string", + "description": "Traffic source. Accepted values are '*', IP Address/CIDR, Service Tag." + }, + "destination": { + "type": "string", + "description": "Traffic destination. Accepted values are: '*', IP Address/CIDR, Service Tag." + }, + "destinationPort": { + "type": "string", + "description": "Traffice destination port. Accepted values are '*', port (for example, 3389) and port range (for example, 80-100)." + } + } + }, + "NetworkConfigurationDiagnosticResponse": { + "description": "Results of network configuration diagnostic on the target resource.", + "properties": { + "results": { + "readOnly": true, + "type": "array", + "description": "List of network configuration diagnostic results.", + "items": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResult" + } + } + } + }, + "NetworkConfigurationDiagnosticResult": { + "description": "Network configuration diagnostic result corresponded to provided traffic query.", + "properties": { + "profile": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticProfile" + }, + "networkSecurityGroupResult": { + "$ref": "#/definitions/NetworkSecurityGroupResult" + } + } + }, + "NetworkSecurityGroupResult": { + "description": "Network configuration diagnostic result corresponded provided traffic query.", + "properties": { + "securityRuleAccessResult": { + "type": "string", + "description": "The network traffic is allowed or denied. Possible values are 'Allow' and 'Deny'.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "SecurityRuleAccess", + "modelAsString": true + } + }, + "evaluatedNetworkSecurityGroups": { + "readOnly": true, + "type": "array", + "description": "List of results network security groups diagnostic.", + "items": { + "$ref": "#/definitions/EvaluatedNetworkSecurityGroup" + } + } + } + }, + "EvaluatedNetworkSecurityGroup": { + "description": "Results of network security group evaluation.", + "properties": { + "networkSecurityGroupId": { + "type": "string", + "description": "Network security group ID." + }, + "appliedTo": { + "type": "string", + "description": "Resource ID of nic or subnet to which network security group is applied." + }, + "matchedRule": { + "$ref": "#/definitions/MatchedRule" + }, + "rulesEvaluationResult": { + "readOnly": true, + "type": "array", + "description": "List of network security rules evaluation results.", + "items": { + "$ref": "#/definitions/NetworkSecurityRulesEvaluationResult" + } + } + } + }, + "MatchedRule": { + "description": "Matched rule.", + "properties": { + "ruleName": { + "type": "string", + "description": "Name of the matched network security rule." + }, + "action": { + "type": "string", + "description": "The network traffic is allowed or denied. Possible values are 'Allow' and 'Deny'." + } + } + }, + "NetworkSecurityRulesEvaluationResult": { + "description": "Network security rules evaluation result.", + "properties": { + "name": { + "type": "string", + "description": "Name of the network security rule." + }, + "protocolMatched": { + "type": "boolean", + "description": "Value indicating whether protocol is matched." + }, + "sourceMatched": { + "type": "boolean", + "description": "Value indicating whether source is matched." + }, + "sourcePortMatched": { + "type": "boolean", + "description": "Value indicating whether source port is matched." + }, + "destinationMatched": { + "type": "boolean", + "description": "Value indicating whether destination is matched." + }, + "destinationPortMatched": { + "type": "boolean", + "description": "Value indicating whether destination port is matched." + } + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/operation.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/operation.json new file mode 100644 index 000000000000..dbebc3cc9ef7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/operation.json @@ -0,0 +1,263 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.Network/operations": { + "get": { + "operationId": "Operations_List", + "description": "Lists all of the available Network Rest API operations.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a list of operations for a resource provider": { "$ref": "./examples/OperationList.json" } + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list Network operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of Network operations supported by the Network resource provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "Network REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft Network.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Type of the operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation.", + "type": "string" + } + } + }, + "origin": { + "description": "Origin of the operation.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationPropertiesFormat", + "description": "Operation properties format." + } + } + }, + "OperationPropertiesFormat": { + "description": "Description of operation properties format.", + "properties": { + "serviceSpecification": { + "description": "Specification of the service.", + "properties": { + "metricSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + }, + "description": "Operation service specification." + }, + "logSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + }, + "description": "Operation log specification." + } + } + } + } + }, + "LogSpecification": { + "description": "Description of logging specification.", + "properties": { + "name": { + "type": "string", + "description": "The name of the specification." + }, + "displayName": { + "type": "string", + "description": "The display name of the specification." + }, + "blobDuration": { + "type": "string", + "description": "Duration of the blob." + } + } + }, + "MetricSpecification": { + "description": "Description of metrics specification.", + "properties": { + "name": { + "type": "string", + "description": "The name of the metric." + }, + "displayName": { + "type": "string", + "description": "The display name of the metric." + }, + "displayDescription": { + "type": "string", + "description": "The description of the metric." + }, + "unit": { + "type": "string", + "description": "Units the metric to be displayed in." + }, + "aggregationType": { + "type": "string", + "description": "The aggregation type." + }, + "availabilities": { + "type": "array", + "items": { + "$ref": "#/definitions/Availability" + }, + "description": "List of availability." + }, + "enableRegionalMdmAccount": { + "type": "boolean", + "description": "Whether regional MDM account enabled." + }, + "fillGapWithZero": { + "type": "boolean", + "description": "Whether gaps would be filled with zeros." + }, + "metricFilterPattern": { + "type": "string", + "description": "Pattern for the filter of the metric." + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + }, + "description": "List of dimensions." + }, + "isInternal": { + "type": "boolean", + "description": "Whether the metric is internal." + }, + "sourceMdmAccount": { + "type": "string", + "description": "The source MDM account." + }, + "sourceMdmNamespace": { + "type": "string", + "description": "The source MDM namespace." + }, + "resourceIdDimensionNameOverride": { + "type": "string", + "description": "The resource Id dimension name override." + } + } + }, + "Dimension": { + "description": "Dimension of the metric.", + "properties": { + "name": { + "type": "string", + "description": "The name of the dimension." + }, + "displayName": { + "type": "string", + "description": "The display name of the dimension." + }, + "internalName": { + "type": "string", + "description": "The internal name of the dimension." + } + } + }, + "Availability": { + "description": "Availability of the metric.", + "properties": { + "timeGrain": { + "type": "string", + "description": "The time grain of the availability." + }, + "retention": { + "type": "string", + "description": "The retention of the availability." + }, + "blobDuration": { + "type": "string", + "description": "Duration of the availability blob." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/publicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/publicIpAddress.json new file mode 100644 index 000000000000..ab97c11aea2b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/publicIpAddress.json @@ -0,0 +1,492 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses/{publicIpAddressName}": { + "delete": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_Delete", + "description": "Deletes the specified public IP address.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete public IP address": { "$ref": "./examples/PublicIpAddressDelete.json" } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_Get", + "description": "Gets the specified public IP address in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + } + }, + "x-ms-examples": { + "Get public IP address": { "$ref": "./examples/PublicIpAddressGet.json" } + } + }, + "put": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_CreateOrUpdate", + "description": "Creates or updates a static or dynamic public IP address.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP address." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PublicIPAddress" + }, + "description": "Parameters supplied to the create or update public IP address operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + } + }, + "x-ms-examples": { + "Create public IP address defaults": { "$ref": "./examples/PublicIpAddressCreateDefaults.json" }, + "Create public IP address allocation method": { "$ref": "./examples/PublicIpAddressCreateCustomizedValues.json" }, + "Create public IP address DNS": { "$ref": "./examples/PublicIpAddressCreateDns.json" } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_UpdateTags", + "description": "Updates public IP address tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP address." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update public IP address tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + } + }, + "x-ms-examples": { + "Update public IP address tags": { "$ref": "./examples/PublicIpAddressUpdateTags.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPAddresses": { + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_ListAll", + "description": "Gets all the public IP addresses in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "#/definitions/PublicIPAddressListResult" + } + } + }, + "x-ms-examples": { + "List all public IP addresses": { "$ref": "./examples/PublicIpAddressListAll.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses": { + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_List", + "description": "Gets all public IP addresses in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "#/definitions/PublicIPAddressListResult" + } + } + }, + "x-ms-examples": { + "List resource group public IP addresses": { "$ref": "./examples/PublicIpAddressList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PublicIPAddressSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a public IP address SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "PublicIPAddressSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a public IP address" + }, + "PublicIPAddressPropertiesFormat": { + "properties": { + "publicIPAllocationMethod": { + "type": "string", + "description": "The public IP allocation method. Possible values are: 'Static' and 'Dynamic'.", + "enum": [ + "Static", + "Dynamic" + ], + "x-ms-enum": { + "name": "IPAllocationMethod", + "modelAsString": true + } + }, + "publicIPAddressVersion": { + "type": "string", + "description": "The public IP address version. Possible values are: 'IPv4' and 'IPv6'.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + }, + "ipConfiguration": { + "readOnly": true, + "$ref": "./networkInterface.json#/definitions/IPConfiguration", + "description": "The IP configuration associated with the public IP address." + }, + "dnsSettings": { + "$ref": "#/definitions/PublicIPAddressDnsSettings", + "description": "The FQDN of the DNS record associated with the public IP address." + }, + "ddosSettings": { + "$ref": "#/definitions/DdoSSettings", + "description": "The DDoS protection custom policy associated with the public IP address." + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "#/definitions/IpTag" + }, + "description": "The list of tags associated with the public IP address." + }, + "ipAddress": { + "type": "string", + "description": "The IP address associated with the public IP address resource." + }, + "publicIPPrefix": { + "$ref":"./network.json#/definitions/SubResource", + "description": "The Public IP Prefix this Public IP Address should be allocated from." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the public IP address." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the public IP resource." + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the PublicIP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Public IP address properties." + }, + "PublicIPAddress": { + "properties": { + "sku": { + "$ref": "#/definitions/PublicIPAddressSku", + "description": "The public IP address SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PublicIPAddressPropertiesFormat", + "description": "Public IP address properties." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Public IP address resource." + }, + "PublicIPAddressListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicIPAddress" + }, + "description": "A list of public IP addresses that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPublicIpAddresses API service call." + }, + "PublicIPAddressDnsSettings": { + "properties": { + "domainNameLabel": { + "type": "string", + "description": "Gets or sets the Domain name label.The concatenation of the domain name label and the regionalized DNS zone make up the fully qualified domain name associated with the public IP address. If a domain name label is specified, an A DNS record is created for the public IP in the Microsoft Azure DNS system." + }, + "fqdn": { + "type": "string", + "description": "Gets the FQDN, Fully qualified domain name of the A DNS record associated with the public IP. This is the concatenation of the domainNameLabel and the regionalized DNS zone." + }, + "reverseFqdn": { + "type": "string", + "description": "Gets or Sets the Reverse FQDN. A user-visible, fully qualified domain name that resolves to this public IP address. If the reverseFqdn is specified, then a PTR DNS record is created pointing from the IP address in the in-addr.arpa domain to the reverse FQDN. " + } + }, + "description": "Contains FQDN of the DNS record associated with the public IP address" + }, + "DdoSSettings": { + "properties": { + "ddosCustomPolicy": { + "readOnly": false, + "$ref":"./network.json#/definitions/SubResource", + "description": "The DDoS custom policy associated with the public IP." + }, + "protectionCoverage": { + "readOnly": false, + "type": "string", + "enum": [ + "Basic", + "Standard" + ], + "description": "The DDoS protection policy customizability of the public IP. Only standard coverage will have the ability to be customized." + } + }, + "description": "Contains the DDoS protection settings of the public IP." + }, + "IpTag": { + "properties": { + "ipTagType": { + "type": "string", + "description": "Gets or sets the ipTag type: Example FirstPartyUsage." + }, + "tag": { + "type": "string", + "description": "Gets or sets value of the IpTag associated with the public IP. Example SQL, Storage etc" + } + }, + "description": "Contains the IpTag associated with the object" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/publicIpPrefix.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/publicIpPrefix.json new file mode 100644 index 000000000000..2faca2361cc2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/publicIpPrefix.json @@ -0,0 +1,440 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIpPrefixName}": { + "delete": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_Delete", + "description": "Deletes the specified public IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the PublicIpPrefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete public IP prefix": { "$ref": "./examples/PublicIpPrefixDelete.json" } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_Get", + "description": "Gets the specified public IP prefix in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the PublicIPPrefx." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + } + }, + "x-ms-examples": { + "Get public IP prefix": { "$ref": "./examples/PublicIpPrefixGet.json" } + } + }, + "put": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_CreateOrUpdate", + "description": "Creates or updates a static or dynamic public IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + }, + "description": "Parameters supplied to the create or update public IP prefix operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + } + }, + "x-ms-examples": { + "Create public IP prefix defaults": { "$ref": "./examples/PublicIpPrefixCreateDefaults.json" }, + "Create public IP prefix allocation method": { "$ref": "./examples/PublicIpPrefixCreateCustomizedValues.json" } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_UpdateTags", + "description": "Updates public IP prefix tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update public IP prefix tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + } + }, + "x-ms-examples": { + "Update public IP prefix tags": { "$ref": "./examples/PublicIpPrefixUpdateTags.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPPrefixes": { + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_ListAll", + "description": "Gets all the public IP prefixes in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPPrefix resources.", + "schema": { + "$ref": "#/definitions/PublicIPPrefixListResult" + } + } + }, + "x-ms-examples": { + "List all public IP prefixes": { "$ref": "./examples/PublicIpPrefixListAll.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes": { + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_List", + "description": "Gets all public IP prefixes in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPPrefix resources.", + "schema": { + "$ref": "#/definitions/PublicIPPrefixListResult" + } + } + }, + "x-ms-examples": { + "List resource group public IP prefixes": { "$ref": "./examples/PublicIpPrefixList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PublicIPPrefixSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a public IP prefix SKU.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "PublicIPPrefixSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a public IP prefix" + }, + "PublicIPPrefixPropertiesFormat": { + "properties": { + "publicIPAddressVersion": { + "type": "string", + "description": "The public IP address version. Possible values are: 'IPv4' and 'IPv6'.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "#/definitions/IpTag" + }, + "description": "The list of tags associated with the public IP prefix." + }, + "prefixLength": { + "type": "integer", + "format":"int32", + "description": "The Length of the Public IP Prefix." + }, + "ipPrefix" : { + "type":"string", + "description": "The allocated Prefix" + }, + "publicIPAddresses": { + "type":"array", + "items":{ + "$ref": "#/definitions/ReferencedPublicIpAddress" + }, + "description":"The list of all referenced PublicIPAddresses" + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the public IP prefix resource." + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the Public IP prefix resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Public IP prefix properties." + }, + "PublicIPPrefix": { + "properties": { + "sku": { + "$ref": "#/definitions/PublicIPPrefixSku", + "description": "The public IP prefix SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PublicIPPrefixPropertiesFormat", + "description": "Public IP prefix properties." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Public IP prefix resource." + }, + "PublicIPPrefixListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicIPPrefix" + }, + "description": "A list of public IP prefixes that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPublicIpPrefixes API service call." + }, + "IpTag": { + "properties": { + "ipTagType": { + "type": "string", + "description": "Gets or sets the ipTag type: Example FirstPartyUsage." + }, + "tag": { + "type": "string", + "description": "Gets or sets value of the IpTag associated with the public IP. Example SQL, Storage etc" + } + }, + "description": "Contains the IpTag associated with the object" + }, + "ReferencedPublicIpAddress":{ + "properties":{ + "id":{ + "type":"string", + "description":"The PublicIPAddress Reference" + } + } + } + } +} \ No newline at end of file diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/routeFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/routeFilter.json new file mode 100644 index 000000000000..8dd0d55eab82 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/routeFilter.json @@ -0,0 +1,783 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}": { + "delete": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_Delete", + "x-ms-examples": { + "RouteFilterDelete": { "$ref": "./examples/RouteFilterDelete.json" } + }, + "description": "Deletes the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_Get", + "x-ms-examples": { + "RouteFilterGet": { "$ref": "./examples/RouteFilterGet.json" } + }, + "description": "Gets the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced express route bgp peering resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + } + } + }, + "put": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_CreateOrUpdate", + "x-ms-examples": { + "RouteFilterCreate": { "$ref": "./examples/RouteFilterCreate.json" } + }, + "description": "Creates or updates a route filter in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "routeFilterParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteFilter" + }, + "description": "Parameters supplied to the create or update route filter operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_Update", + "x-ms-examples": { + "RouteFilterUpdate": { "$ref": "./examples/RouteFilterUpdate.json" } + }, + "description": "Updates a route filter in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "routeFilterParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PatchRouteFilter" + }, + "description": "Parameters supplied to the update route filter operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters": { + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_ListByResourceGroup", + "x-ms-examples": { + "RouteFilterListByResourceGroup": { "$ref": "./examples/RouteFilterListByResourceGroup.json" } + }, + "description": "Gets all route filters in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter resources.", + "schema": { + "$ref": "#/definitions/RouteFilterListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeFilters": { + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_List", + "x-ms-examples": { + "RouteFilterList": { "$ref": "./examples/RouteFilterList.json" } + }, + "description": "Gets all route filters in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter resources.", + "schema": { + "$ref": "#/definitions/RouteFilterListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules/{ruleName}": { + "delete": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_Delete", + "x-ms-examples": { + "RouteFilterRuleDelete": { "$ref": "./examples/RouteFilterRuleDelete.json" } + }, + "description": "Deletes the specified rule from a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Accepted." + }, + "204": { + "description": "Rule was deleted or not found." + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_Get", + "x-ms-examples": { + "RouteFilterRuleGet": { "$ref": "./examples/RouteFilterRuleGet.json" } + }, + "description": "Gets the specified rule from a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + } + } + }, + "put": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_CreateOrUpdate", + "x-ms-examples": { + "RouteFilterRuleCreate": { "$ref": "./examples/RouteFilterRuleCreate.json" } + }, + "description": "Creates or updates a route in the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter rule." + }, + { + "name": "routeFilterRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "Parameters supplied to the create or update route filter rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_Update", + "x-ms-examples": { + "RouteFilterRuleUpdate": { "$ref": "./examples/RouteFilterRuleUpdate.json" } + }, + "description": "Updates a route in the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter rule." + }, + { + "name": "routeFilterRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PatchRouteFilterRule" + }, + "description": "Parameters supplied to the update route filter rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules": { + "get": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_ListByRouteFilter", + "x-ms-examples": { + "RouteFilterRuleListByRouteFilter": { "$ref": "./examples/RouteFilterRuleListByRouteFilter.json" } + }, + "description": "Gets all RouteFilterRules in a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter Rule resources.", + "schema": { + "$ref": "#/definitions/RouteFilterRuleListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "RouteFilterRulePropertiesFormat": { + "required": [ + "access", + "routeFilterRuleType", + "communities" + ], + "properties": { + "access": { + "type": "string", + "description": "The access type of the rule. Valid values are: 'Allow', 'Deny'", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "Access", + "modelAsString": true + } + }, + "routeFilterRuleType": { + "type": "string", + "description": "The rule type of the rule. Valid value is: 'Community'", + "enum": [ + "Community" + ], + "x-ms-enum": { + "name": "RouteFilterRuleType", + "modelAsString": true + } + }, + "communities": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection for bgp community values to filter on. e.g. ['12076:5010','12076:5020']" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioning state of the resource. Possible values are: 'Updating', 'Deleting', 'Succeeded' and 'Failed'." + } + }, + "description": "Route Filter Rule Resource" + }, + "RouteFilterRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterRulePropertiesFormat" + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Rule Resource" + }, + "PatchRouteFilterRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterRulePropertiesFormat" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Rule Resource" + }, + "RouteFilterPropertiesFormat": { + "properties": { + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "Collection of RouteFilterRules contained within a route filter." + }, + "peerings": { + "type": "array", + "items": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeering" + }, + "description": "A collection of references to express route circuit peerings." + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioning state of the resource. Possible values are: 'Updating', 'Deleting', 'Succeeded' and 'Failed'." + } + }, + "description": "Route Filter Resource" + }, + "RouteFilter": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterPropertiesFormat" + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Route Filter Resource." + }, + "PatchRouteFilter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterPropertiesFormat" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Resource." + }, + "RouteFilterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilter" + }, + "description": "Gets a list of route filters in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteFilters API service call." + }, + "RouteFilterRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "Gets a list of RouteFilterRules in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteFilterRules API service call" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/routeTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/routeTable.json new file mode 100644 index 000000000000..9d8174e2c7a3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/routeTable.json @@ -0,0 +1,654 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}": { + "delete": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_Delete", + "description": "Deletes the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "200": { + "description": "Request successful. Operation to delete was accepted." + }, + "202": { + "description": "Accepted. If route table not found returned synchronously, otherwise if found returned asynchronously." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete route table": { "$ref": "./examples/RouteTableDelete.json" } + } + }, + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_Get", + "description": "Gets the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + } + }, + "x-ms-examples": { + "Get route table": { "$ref": "./examples/RouteTableGet.json" } + } + }, + "put": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_CreateOrUpdate", + "description": "Create or updates a route table in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteTable" + }, + "description": "Parameters supplied to the create or update route table operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + } + }, + "x-ms-examples": { + "Create route table": { "$ref": "./examples/RouteTableCreate.json" }, + "Create route table with route": { "$ref": "./examples/RouteTableCreateWithRoute.json" } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_UpdateTags", + "description": "Updates a route table tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update route table tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + } + }, + "x-ms-examples": { + "Update route table tags": { "$ref": "./examples/RouteTableUpdateTags.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables": { + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_List", + "description": "Gets all route tables in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of RouteTable resources.", + "schema": { + "$ref": "#/definitions/RouteTableListResult" + } + } + }, + "x-ms-examples": { + "List route tables in resource group": { "$ref": "./examples/RouteTableList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeTables": { + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_ListAll", + "description": "Gets all route tables in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of RouteTable resources.", + "schema": { + "$ref": "#/definitions/RouteTableListResult" + } + } + }, + "x-ms-examples": { + "List all route tables": { "$ref": "./examples/RouteTableListAll.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes/{routeName}": { + "delete": { + "tags": [ + "Routes" + ], + "operationId": "Routes_Delete", + "description": "Deletes the specified route from a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Accepted." + }, + "204": { + "description": "Route was deleted or not found." + } + }, + "x-ms-examples": { + "Delete route": { "$ref": "./examples/RouteTableRouteDelete.json" } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Routes" + ], + "operationId": "Routes_Get", + "description": "Gets the specified route from a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + } + }, + "x-ms-examples": { + "Get route": { "$ref": "./examples/RouteTableRouteGet.json" } + } + }, + "put": { + "tags": [ + "Routes" + ], + "operationId": "Routes_CreateOrUpdate", + "description": "Creates or updates a route in the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "name": "routeParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Route" + }, + "description": "Parameters supplied to the create or update route operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + } + }, + "x-ms-examples": { + "Create route": { "$ref": "./examples/RouteTableRouteCreate.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes": { + "get": { + "tags": [ + "Routes" + ], + "operationId": "Routes_List", + "description": "Gets all routes in a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route resources.", + "schema": { + "$ref": "#/definitions/RouteListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List routes": { "$ref": "./examples/RouteTableRouteList.json" } + } + } + } + }, + "definitions": { + "RoutePropertiesFormat": { + "properties": { + "addressPrefix": { + "type": "string", + "description": "The destination CIDR to which the route applies." + }, + "nextHopType": { + "type": "string", + "description": "The type of Azure hop the packet should be sent to. Possible values are: 'VirtualNetworkGateway', 'VnetLocal', 'Internet', 'VirtualAppliance', and 'None'", + "enum": [ + "VirtualNetworkGateway", + "VnetLocal", + "Internet", + "VirtualAppliance", + "None" + ], + "x-ms-enum": { + "name": "RouteNextHopType", + "modelAsString": true + } + }, + "nextHopIpAddress": { + "type": "string", + "description": "The IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance." + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "required": [ + "nextHopType" + ], + "description": "Route resource" + }, + "Route": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoutePropertiesFormat", + "description": "Properties of the route." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route resource" + }, + "RouteTablePropertiesFormat": { + "properties": { + "routes": { + "type": "array", + "items": { + "$ref": "#/definitions/Route" + }, + "description": "Collection of routes contained within a route table." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "disableBgpRoutePropagation": { + "type": "boolean", + "description": "Gets or sets whether to disable the routes learned by BGP on that route table. True means disable." + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Route Table resource" + }, + "RouteTable": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteTablePropertiesFormat", + "description": "Properties of the route table." + }, + "etag": { + "type": "string", + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Route table resource." + }, + "RouteTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteTable" + }, + "description": "Gets a list of route tables in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteTable API service call." + }, + "RouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Route" + }, + "description": "Gets a list of routes in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRoute API service call" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/serviceCommunity.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/serviceCommunity.json new file mode 100644 index 000000000000..77571cfacee3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/serviceCommunity.json @@ -0,0 +1,149 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/bgpServiceCommunities": { + "get": { + "tags": [ + "BgpServiceCommunities" + ], + "operationId": "BgpServiceCommunities_List", + "x-ms-examples": { + "ServiceCommunityList": { "$ref": "./examples/ServiceCommunityList.json" } + }, + "description": "Gets all the available bgp service communities.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of BgpServiceCommunity resources.", + "schema": { + "$ref": "#/definitions/BgpServiceCommunityListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "BGPCommunity": { + "properties": { + "serviceSupportedRegion": { + "type": "string", + "description": "The region which the service support. e.g. For O365, region is Global." + }, + "communityName": { + "type": "string", + "description": "The name of the bgp community. e.g. Skype." + }, + "communityValue": { + "type": "string", + "description": "The value of the bgp community. For more information: https://docs.microsoft.com/en-us/azure/expressroute/expressroute-routing." + }, + "communityPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The prefixes that the bgp community contains." + }, + "isAuthorizedToUse": { + "type": "boolean", + "description": "Customer is authorized to use bgp community or not." + }, + "serviceGroup": { + "type": "string", + "description": "The service group of the bgp community contains." + } + }, + "description": "Contains bgp community information offered in Service Community resources." + }, + "BgpServiceCommunityPropertiesFormat": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the bgp community. e.g. Skype." + }, + "bgpCommunities": { + "type": "array", + "items": { + "$ref": "#/definitions/BGPCommunity" + }, + "description": "Get a list of bgp communities." + } + }, + "description": "Properties of Service Community." + }, + "BgpServiceCommunity": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BgpServiceCommunityPropertiesFormat" + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Service Community Properties." + }, + "BgpServiceCommunityListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BgpServiceCommunity" + }, + "description": "A list of service community resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListServiceCommunity API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/serviceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/serviceEndpointPolicy.json new file mode 100644 index 000000000000..df755e0293be --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/serviceEndpointPolicy.json @@ -0,0 +1,647 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}": { + "delete": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_Delete", + "description": "Deletes the specified service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + } + }, + "x-ms-examples": { + "Delete service endpoint Policys": { "$ref": "./examples/ServiceEndpointPolicyDelete.json" } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_Get", + "description": "Gets the specified service Endpoint Policies in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + } + }, + "x-ms-examples": { + "Get service endPoint Policy": { "$ref": "./examples/ServiceEndpointPolicyGet.json" } + } + }, + "put": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_CreateOrUpdate", + "description": "Creates or updates a service Endpoint Policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + }, + "description": "Parameters supplied to the create or update service endpoint policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + } + }, + "x-ms-examples": { + "Create service endpoint policy": { "$ref": "./examples/ServiceEndpointPolicyCreate.json" }, + "Create service endpoint policy with definition": { "$ref": "./examples/ServiceEndpointPolicyCreateWithDefinition.json" } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_Update", + "description": "Updates service Endpoint Policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update service endpoint policy tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + } + }, + "x-ms-examples": { + "Update service endpoint policy tags": { "$ref": "./examples/ServiceEndpointPolicyUpdateTags.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ServiceEndpointPolicies": { + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_List", + "description": "Gets all the service endpoint policies in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicy resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyListResult" + } + } + }, + "x-ms-examples": { + "List all service endpoint policy": { "$ref": "./examples/ServiceEndpointPolicyListAll.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies": { + "get": { + "tags": [ + "serviceEndpointPolicies" + ], + "operationId": "serviceEndpointPolicies_ListByResourceGroup", + "description": "Gets all service endpoint Policies in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicy resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyListResult" + } + } + }, + "x-ms-examples": { + "List resource group service endpoint policies": { "$ref": "./examples/ServiceEndpointPolicyList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions/{serviceEndpointPolicyDefinitionName}": { + "delete": { + "tags": [ + "ServiceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_Delete", + "description": "Deletes the specified ServiceEndpoint policy definitions.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Service Endpoint Policy." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "Delete service endpoint policy definitions from service endpoint policy": { "$ref": "./examples/ServiceEndpointPolicyDefinitionDelete.json" } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "serviceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_Get", + "description": "Get the specified service endpoint policy definitions from service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy name." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + } + }, + "x-ms-examples": { + "Get service endpoint definition in service endpoint policy": { "$ref": "./examples/ServiceEndpointPolicyDefinitionGet.json" } + } + }, + "put": { + "tags": [ + "serviceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_CreateOrUpdate", + "description": "Creates or updates a service endpoint policy definition in the specified service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition name." + }, + { + "name": "ServiceEndpointPolicyDefinitions", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "Parameters supplied to the create or update service endpoint policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + } + }, + "x-ms-examples": { + "Create service endpoint policy definition": { "$ref": "./examples/ServiceEndpointPolicyDefinitionCreate.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions": { + "get": { + "tags": [ + "ServiceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_ListByResourceGroup", + "description": "Gets all service endpoint policy definitions in a service end point policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicyDefinition resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinitionListResult" + } + } + }, + "x-ms-examples": { + "List service endpoint definitions in service end point policy": { "$ref": "./examples/ServiceEndpointPolicyDefinitionList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ServiceEndpointPolicyDefinitionPropertiesFormat": { + "properties": { + "description": { + "type": "string", + "description": "A description for this rule. Restricted to 140 chars." + }, + "service": { + "type": "string", + "description": "service endpoint name." + }, + "serviceResources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of service resources." + }, + "provisioningState": { + "readOnly" : true, + "type": "string", + "description": "The provisioning state of the service end point policy definition. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Service Endpoint policy definition resource." + }, + "ServiceEndpointPolicyDefinition": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceEndpointPolicyDefinitionPropertiesFormat", + "description": "Properties of the service endpoint policy definition" + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Service Endpoint policy definitions." + }, + "ServiceEndpointPolicyDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "The service endpoint policy definition in a service endpoint policy." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListServiceEndpointPolicyDefinition API service call. Retrieves all service endpoint policy definition that belongs to a service endpoint policy." + }, + "ServiceEndpointPolicyPropertiesFormat": { + "properties": { + "serviceEndpointPolicyDefinitions": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "A collection of service endpoint policy definitions of the service endpoint policy." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "resourceGuid": { + "type": "string", + "readOnly": true, + "description": "The resource GUID property of the service endpoint policy resource." + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioning state of the service endpoint policy. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Service Endpoint Policy resource." + }, + "ServiceEndpointPolicy": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceEndpointPolicyPropertiesFormat", + "description": "Properties of the service end point policy" + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Service End point policy resource." + }, + "ServiceEndpointPolicyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicy" + }, + "description": "A list of ServiceEndpointPolicy resources." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListServiceEndpointPolicies API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/usage.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/usage.json new file mode 100644 index 000000000000..afc9b366a001 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/usage.json @@ -0,0 +1,150 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/usages": { + "get": { + "tags": [ + "Usages" + ], + "operationId": "Usages_List", + "description": "List network usages for a subscription.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location where resource usage is queried.", + "pattern": "^[-\\w\\._ ]+$" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Usage resources.", + "schema": { + "$ref": "#/definitions/UsagesListResult" + } + } + }, + "x-ms-examples": { + "List usages": { "$ref": "./examples/UsageList.json" }, + "List usages spaced location": { "$ref": "./examples/UsageListSpacedLocation.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "UsageName": { + "properties": { + "value": { + "type": "string", + "description": "A string describing the resource name." + }, + "localizedValue": { + "type": "string", + "description": "A localized string describing the resource name." + } + }, + "description": "The usage names." + }, + "Usage": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Resource identifier." + }, + "unit": { + "type": "string", + "description": "An enum describing the unit of measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": true + } + }, + "currentValue": { + "type": "integer", + "format": "int64", + "description": "The current value of the usage." + }, + "limit": { + "type": "integer", + "format": "int64", + "description": "The limit of usage." + }, + "name": { + "$ref": "#/definitions/UsageName", + "description": "The name of the type of usage." + } + }, + "required": [ + "unit", + "currentValue", + "limit", + "name" + ], + "description": "Describes network resource usage." + }, + "UsagesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list network resource usages." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "The list usages operation response." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/virtualNetwork.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/virtualNetwork.json new file mode 100644 index 000000000000..618934cb518d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/virtualNetwork.json @@ -0,0 +1,1381 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}": { + "delete": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_Delete", + "description": "Deletes the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete virtual network": { "$ref": "./examples/VirtualNetworkDelete.json" } + } + }, + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_Get", + "description": "Gets the specified virtual network by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + } + }, + "x-ms-examples": { + "Get virtual network": { "$ref": "./examples/VirtualNetworkGet.json" }, + "Get virtual network with a delegated subnet": { "$ref": "./examples/VirtualNetworkGetWithSubnetDelegation.json" }, + "Get virtual network with service association links": { "$ref": "./examples/VirtualNetworkGetWithServiceAssociationLink.json" } + } + }, + "put": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_CreateOrUpdate", + "description": "Creates or updates a virtual network in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetwork" + }, + "description": "Parameters supplied to the create or update virtual network operation" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create virtual network": { "$ref": "./examples/VirtualNetworkCreate.json" }, + "Create virtual network with subnet": { "$ref": "./examples/VirtualNetworkCreateSubnet.json" }, + "Create virtual network with subnet containing address prefixes": { "$ref": "./examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json" }, + "Create virtual network with service endpoints": { "$ref": "./examples/VirtualNetworkCreateServiceEndpoints.json" }, + "Create virtual network with delegated subnets": { "$ref": "./examples/VirtualNetworkCreateSubnetWithDelegation.json" } + } + }, + "patch": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_UpdateTags", + "description": "Updates a virtual network tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update virtual network tags": { "$ref": "./examples/VirtualNetworkUpdateTags.json" } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworks": { + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_ListAll", + "description": "Gets all virtual networks in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetwork resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListResult" + } + } + }, + "x-ms-examples": { + "List all virtual networks": { "$ref": "./examples/VirtualNetworkListAll.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks": { + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_List", + "description": "Gets all virtual networks in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetwork resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListResult" + } + } + }, + "x-ms-examples": { + "List virtual networks in resource group": { "$ref": "./examples/VirtualNetworkList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}": { + "delete": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_Delete", + "description": "Deletes the specified subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "Delete subnet": { "$ref": "./examples/SubnetDelete.json" } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_Get", + "description": "Gets the specified subnet by virtual network and resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + } + }, + "x-ms-examples": { + "Get subnet": { "$ref": "./examples/SubnetGet.json" }, + "Get subnet with a delegation": { "$ref": "./examples/SubnetGetWithDelegation.json" } + } + }, + "put": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_CreateOrUpdate", + "description": "Creates or updates a subnet in the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "subnetParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Subnet" + }, + "description": "Parameters supplied to the create or update subnet operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create subnet": { "$ref": "./examples/SubnetCreate.json" }, + "Create subnet with service endpoints": { "$ref": "./examples/SubnetCreateServiceEndpoint.json" }, + "Create subnet with a delegation": { "$ref": "./examples/SubnetCreateWithDelegation.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets": { + "get": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_List", + "description": "Gets all subnets in a virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Subnet resources.", + "schema": { + "$ref": "#/definitions/SubnetListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List subnets": { "$ref": "./examples/SubnetList.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings/{virtualNetworkPeeringName}": { + "delete": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_Delete", + "description": "Deletes the specified virtual network peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "Delete peering": { "$ref": "./examples/VirtualNetworkPeeringDelete.json" } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_Get", + "description": "Gets the specified virtual network peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + } + }, + "x-ms-examples": { + "Get peering": { "$ref": "./examples/VirtualNetworkPeeringGet.json" } + } + }, + "put": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "VirtualNetworkPeeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "Parameters supplied to the create or update virtual network peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + } + }, + "x-ms-examples": { + "Create peering": { "$ref": "./examples/VirtualNetworkPeeringCreate.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings": { + "get": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_List", + "description": "Gets all virtual network peerings in a virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkPeering resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeeringListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List peerings": { "$ref": "./examples/VirtualNetworkPeeringList.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/CheckIPAddressAvailability": { + "get": { + "operationId": "VirtualNetworks_CheckIPAddressAvailability", + "description": "Checks whether a private IP address is available for use.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "ipAddress", + "in": "query", + "required": true, + "type": "string", + "description": "The private IP address to be verified." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Private IP address availability and list of other free addresses if the requested one is not available.", + "schema": { + "$ref": "#/definitions/IPAddressAvailabilityResult" + } + } + }, + "x-ms-examples": { + "Check IP address availability": { "$ref": "./examples/VirtualNetworkCheckIPAddressAvailability.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/usages": { + "get": { + "operationId": "VirtualNetworks_ListUsage", + "description": "Lists usage stats.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Usage stats for vnet.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListUsageResult" + } + } + }, + "x-ms-examples": { + "VnetGetUsage": { "$ref": "./examples/VirtualNetworkListUsage.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ServiceAssociationLinkPropertiesFormat": { + "properties": { + "linkedResourceType": { + "type": "string", + "description": "Resource type of the linked resource." + }, + "link": { + "type": "string", + "description": "Link to the external resource." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Provisioning state of the ServiceAssociationLink resource." + } + }, + "description": "Properties of ServiceAssociationLink." + }, + "ServiceAssociationLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceAssociationLinkPropertiesFormat", + "description": "Resource navigation link properties format." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ServiceAssociationLink resource." + }, + "ResourceNavigationLinkFormat": { + "properties": { + "linkedResourceType": { + "type": "string", + "description": "Resource type of the linked resource." + }, + "link": { + "type": "string", + "description": "Link to the external resource" + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Provisioning state of the ResourceNavigationLink resource." + } + }, + "description": "Properties of ResourceNavigationLink." + }, + "ResourceNavigationLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ResourceNavigationLinkFormat", + "description": "Resource navigation link properties format." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ResourceNavigationLink resource." + }, + "ServiceDelegationPropertiesFormat": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service to whom the subnet should be delegated (e.g. Microsoft.Sql/servers)" + }, + "actions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Describes the actions permitted to the service upon delegation" + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource." + } + }, + "description": "Properties of a service delegation." + }, + "Delegation": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceDelegationPropertiesFormat", + "description": "Properties of the subnet." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a subnet. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Details the service to which the subnet is delegated." + }, + "SubnetPropertiesFormat": { + "properties": { + "addressPrefix": { + "type": "string", + "description": "The address prefix for the subnet." + }, + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of address prefixes for the subnet." + }, + "networkSecurityGroup": { + "$ref": "./networkSecurityGroup.json#/definitions/NetworkSecurityGroup", + "description": "The reference of the NetworkSecurityGroup resource." + }, + "routeTable": { + "$ref": "./routeTable.json#/definitions/RouteTable", + "description": "The reference of the RouteTable resource." + }, + "serviceEndpoints": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPropertiesFormat" + }, + "description": "An array of service endpoints." + }, + "serviceEndpointPolicies": { + "type": "array", + "items": { + "$ref": "./serviceEndpointPolicy.json#/definitions/ServiceEndpointPolicy" + }, + "description": "An array of service endpoint policies." + }, + "interfaceEndpoints": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./interfaceEndpoint.json#/definitions/InterfaceEndpoint" + }, + "description": "An array of references to interface endpoints " + }, + "ipConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/IPConfiguration" + }, + "description": "Gets an array of references to the network interface IP configurations using subnet." + }, + "ipConfigurationProfiles": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkProfile.json#/definitions/IPConfigurationProfile" + }, + "description": "Array of IP configuration profiles which reference this subnet." + }, + "resourceNavigationLinks": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceNavigationLink" + }, + "description": "Gets an array of references to the external resources using subnet." + }, + "serviceAssociationLinks": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceAssociationLink" + }, + "description": "Gets an array of references to services injecting into this subnet." + }, + "delegations": { + "type": "array", + "items": { + "$ref": "#/definitions/Delegation" + }, + "description": "Gets an array of references to the delegations on the subnet." + }, + "purpose": { + "type": "string", + "readOnly": true, + "description": "A read-only string identifying the intention of use for this subnet based on delegations and other user-defined properties." + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the resource." + } + }, + "description": "Properties of the subnet." + }, + "ServiceEndpointPropertiesFormat": { + "properties": { + "service": { + "type": "string", + "description": "The type of the endpoint service." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of locations." + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the resource." + } + }, + "description": "The service endpoint properties." + }, + "VirtualNetworkPeeringPropertiesFormat": { + "properties": { + "allowVirtualNetworkAccess": { + "type": "boolean", + "description": "Whether the VMs in the linked virtual network space would be able to access all the VMs in local Virtual network space." + }, + "allowForwardedTraffic": { + "type": "boolean", + "description": "Whether the forwarded traffic from the VMs in the remote virtual network will be allowed/disallowed." + }, + "allowGatewayTransit": { + "type": "boolean", + "description": "If gateway links can be used in remote virtual networking to link to this virtual network." + }, + "useRemoteGateways": { + "type": "boolean", + "description": "If remote gateways can be used on this virtual network. If the flag is set to true, and allowGatewayTransit on remote peering is also true, virtual network will use gateways of remote virtual network for transit. Only one peering can have this flag set to true. This flag cannot be set if virtual network already has a gateway." + }, + "remoteVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the remote virtual network. The remote virtual network can be in the same or different region (preview). See here to register for the preview and learn more (https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-create-peering)." + }, + "remoteAddressSpace": { + "$ref": "#/definitions/AddressSpace", + "description": "The reference of the remote virtual network address space." + }, + "peeringState": { + "type": "string", + "description": "The status of the virtual network peering. Possible values are 'Initiated', 'Connected', and 'Disconnected'.", + "enum": [ + "Initiated", + "Connected", + "Disconnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkPeeringState", + "modelAsString": true + } + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the resource." + } + }, + "description": "Properties of the virtual network peering." + }, + "Subnet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubnetPropertiesFormat", + "description": "Properties of the subnet." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Subnet in a virtual network resource." + }, + "VirtualNetworkPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkPeeringPropertiesFormat", + "description": "Properties of the virtual network peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peerings in a virtual network resource." + }, + "SubnetListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + }, + "description": "The subnets in a virtual network." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSubnets API service callRetrieves all subnet that belongs to a virtual network" + }, + "VirtualNetworkPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "The peerings in a virtual network." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSubnets API service call. Retrieves all subnets that belong to a virtual network." + }, + "VirtualNetworkPropertiesFormat": { + "properties": { + "addressSpace": { + "$ref": "#/definitions/AddressSpace", + "description": "The AddressSpace that contains an array of IP address ranges that can be used by subnets." + }, + "dhcpOptions": { + "$ref": "#/definitions/DhcpOptions", + "description": "The dhcpOptions that contains an array of DNS servers available to VMs deployed in the virtual network." + }, + "subnets": { + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + }, + "description": "A list of subnets in a Virtual Network." + }, + "virtualNetworkPeerings": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "A list of peerings in a Virtual Network." + }, + "resourceGuid": { + "type": "string", + "description": "The resourceGuid property of the Virtual Network resource." + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the PublicIP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + }, + "enableDdosProtection": { + "type": "boolean", + "default": false, + "description": "Indicates if DDoS protection is enabled for all the protected resources in the virtual network. It requires a DDoS protection plan associated with the resource." + }, + "enableVmProtection": { + "type": "boolean", + "default": false, + "description": "Indicates if VM protection is enabled for all the subnets in the virtual network." + }, + "ddosProtectionPlan": { + "$ref": "./network.json#/definitions/SubResource", + "default": null, + "description": "The DDoS protection plan associated with the virtual network." + } + }, + "description": "Properties of the virtual network." + }, + "VirtualNetwork": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkPropertiesFormat", + "description": "Properties of the virtual network." + }, + "etag": { + "type": "string", + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Virtual Network resource." + }, + "VirtualNetworkListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetwork" + }, + "description": "Gets a list of VirtualNetwork resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworks API service call." + }, + "AddressSpace": { + "properties": { + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of address blocks reserved for this virtual network in CIDR notation." + } + }, + "description": "AddressSpace contains an array of IP address ranges that can be used by subnets of the virtual network." + }, + "DhcpOptions": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of DNS servers IP addresses." + } + }, + "description": "DhcpOptions contains an array of DNS servers available to VMs deployed in the virtual network. Standard DHCP option for a subnet overrides VNET DHCP options." + }, + "IPAddressAvailabilityResult": { + "properties": { + "available": { + "type": "boolean", + "description": "Private IP address availability." + }, + "availableIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Contains other available private IP addresses if the asked for address is taken." + } + }, + "description": "Response for CheckIPAddressAvailability API service call" + }, + "VirtualNetworkListUsageResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/VirtualNetworkUsage" + }, + "description": "VirtualNetwork usage stats." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the virtual networks GetUsage API service call." + }, + "VirtualNetworkUsage": { + "properties": { + "currentValue": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "Indicates number of IPs used from the Subnet." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Subnet identifier." + }, + "limit": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "Indicates the size of the subnet." + }, + "name": { + "$ref": "#/definitions/VirtualNetworkUsageName", + "readOnly": true, + "description": "The name containing common and localized value for usage." + }, + "unit": { + "type": "string", + "readOnly": true, + "description": "Usage units. Returns 'Count'" + } + }, + "description": "Usage details for subnet." + }, + "VirtualNetworkUsageName": { + "properties": { + "localizedValue": { + "type": "string", + "readOnly": true, + "description": "Localized subnet size and usage string." + }, + "value": { + "type": "string", + "readOnly": true, + "description": "Subnet size and usage string." + } + }, + "description": "Usage strings container." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/virtualNetworkGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/virtualNetworkGateway.json new file mode 100644 index 000000000000..54d7c61f31e3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/virtualNetworkGateway.json @@ -0,0 +1,2817 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}": { + "put": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_CreateOrUpdate", + "description": "Creates or updates a virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + }, + "description": "Parameters supplied to create or update virtual network gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGateway": { "$ref": "./examples/VirtualNetworkGatewayUpdate.json" } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Get", + "description": "Gets the specified virtual network gateway by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGateway": { "$ref": "./examples/VirtualNetworkGatewayGet.json" } + } + }, + "delete": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Delete", + "description": "Deletes the specified virtual network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "DeleteVirtualNetworkGateway": { "$ref": "./examples/VirtualNetworkGatewayDelete.json" } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_UpdateTags", + "description": "Updates a virtual network gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGatewayTags": { "$ref": "./examples/VirtualNetworkGatewayUpdateTags.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways": { + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_List", + "description": "Gets all virtual network gateways by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGateway resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayListResult" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewaysinResourceGroup": { "$ref": "./examples/VirtualNetworkGatewayList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/connections": { + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_ListConnections", + "description": "Gets all the connections in a virtual network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayListConnectionsResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "VirtualNetworkGatewaysListConnections": { "$ref": "./examples/VirtualNetworkGatewaysListConnections.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/reset": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Reset", + "description": "Resets the primary of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "gatewayVip", + "in": "query", + "required": false, + "type": "string", + "description": "Virtual network gateway vip address supplied to the begin reset of the active-active feature enabled gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation reset the primary of the virtual network gateway.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + } + }, + "x-ms-examples": { + "ResetVirtualNetworkGateway": { "$ref": "./examples/VirtualNetworkGatewayReset.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/resetvpnclientsharedkey": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_ResetVpnClientSharedKey", + "description": "Resets the VPN client shared key of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation reset the vpn client shared key of the virtual network gateway." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously" + } + }, + "x-ms-examples": { + "ResetVpnClientSharedKey": { "$ref": "./examples/VirtualNetworkGatewayResetVpnClientSharedKey.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnclientpackage": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Generatevpnclientpackage", + "description": "Generates VPN client package for P2S client of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientParameters" + }, + "description": "Parameters supplied to the generate virtual network gateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN client package URL.", + "schema": { + "type": "string" + } + } + }, + "x-ms-examples": { + "GenerateVPNClientPackage": { "$ref": "./examples/VirtualNetworkGatewayGenerateVpnClientPackage.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnprofile": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GenerateVpnProfile", + "description": "Generates VPN profile for P2S client of the virtual network gateway in the specified resource group. Used for IKEV2 and radius based authentication.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientParameters" + }, + "description": "Parameters supplied to the generate virtual network gateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GenerateVirtualNetworkGatewayVPNProfile": { "$ref": "./examples/VirtualNetworkGatewayGenerateVpnProfile.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnprofilepackageurl": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnProfilePackageUrl", + "description": "Gets pre-generated VPN profile for P2S client of the virtual network gateway in the specified resource group. The profile needs to be generated first using generateVpnProfile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayVPNProfilePackageURL": { "$ref": "./examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getBgpPeerStatus": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetBgpPeerStatus", + "description": "The GetBgpPeerStatus operation retrieves the status of all BGP peers.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "peer", + "in": "query", + "required": false, + "type": "string", + "description": "The IP address of the peer to retrieve the status of." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of BGP peer statuses", + "schema": { + "$ref": "#/definitions/BgpPeerStatusListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayBGPPeerStatus": { "$ref": "./examples/VirtualNetworkGatewayGetBGPPeerStatus.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/supportedvpndevices": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_SupportedVpnDevices", + "description": "Gets a xml format representation for supported vpn devices.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Xml format representation for supported vpn devices.", + "schema": { + "type": "string" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewaySupportedVPNDevices": { "$ref": "./examples/VirtualNetworkGatewaySupportedVpnDevice.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getLearnedRoutes": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetLearnedRoutes", + "description": "This operation retrieves a list of routes the virtual network gateway has learned, including routes learned from BGP peers.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of advertised BGP routes", + "schema": { + "$ref": "#/definitions/GatewayRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayLearnedRoutes": { "$ref": "./examples/VirtualNetworkGatewayLearnedRoutes.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getAdvertisedRoutes": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetAdvertisedRoutes", + "description": "This operation retrieves a list of routes the virtual network gateway is advertising to the specified peer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "peer", + "in": "query", + "required": true, + "type": "string", + "description": "The IP address of the peer" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of learned BGP routes", + "schema": { + "$ref": "#/definitions/GatewayRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayAdvertisedRoutes": { "$ref": "./examples/VirtualNetworkGatewayGetAdvertisedRoutes.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/setvpnclientipsecparameters": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_SetVpnclientIpsecParameters", + "description": "The Set VpnclientIpsecParameters operation sets the vpnclient ipsec policy for P2S client of virtual network gateway in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "vpnclientIpsecParams", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + }, + "description": "Parameters supplied to the Begin Set vpnclient ipsec parameters of Virtual Network Gateway P2S client operation through Network resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation sets the specificed vpnclient ipsec parameters for P2S client of the virtual network gateway.", + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Set VirtualNetworkGateway VpnClientIpsecParameters": { "$ref": "./examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnclientipsecparameters": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnclientIpsecParameters", + "description": "The Get VpnclientIpsecParameters operation retrieves information about the vpnclient ipsec policy for P2S client of virtual network gateway in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the set vpnclient ipsec parameters for P2S client of VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Get VirtualNetworkGateway VpnClientIpsecParameters": { "$ref": "./examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json" } + } + + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/vpndeviceconfigurationscript": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_VpnDeviceConfigurationScript", + "description": "Gets a xml format representation for vpn device configuration script.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection for which the configuration script is generated." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnDeviceScriptParameters" + }, + "description": "Parameters supplied to the generate vpn device script operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Xml format representation for vpn device configuration script.", + "schema": { + "type": "string" + } + } + }, + "x-ms-examples": { + "GetVPNDeviceConfigurationScript": { "$ref": "./examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}": { + "put": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_CreateOrUpdate", + "description": "Creates or updates a virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + }, + "description": "Parameters supplied to the create or update virtual network gateway connection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + } + }, + "x-ms-examples": { + "CreateVirtualNetworkGatewayConnection_S2S": { "$ref": "./examples/VirtualNetworkGatewayConnectionCreate.json" } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_Get", + "description": "Gets the specified virtual network gateway connection by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayConnection": { "$ref": "./examples/VirtualNetworkGatewayConnectionGet.json" } + } + }, + "delete": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_Delete", + "description": "Deletes the specified virtual network Gateway connection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + } + }, + "x-ms-examples": { + "DeleteVirtualNetworkGatewayConnection": { "$ref": "./examples/VirtualNetworkGatewayConnectionDelete.json" } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_UpdateTags", + "description": "Updates a virtual network gateway connection tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network gateway connection tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGatewayConnectionTags": { "$ref": "./examples/VirtualNetworkGatewayConnectionUpdateTags.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey": { + "put": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_SetSharedKey", + "description": "The Put VirtualNetworkGatewayConnectionSharedKey operation sets the virtual network gateway connection shared key for passed virtual network gateway connection in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + }, + "description": "Parameters supplied to the Begin Set Virtual Network Gateway connection Shared key operation throughNetwork resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting ConnectionSharedKey resource.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + } + }, + "x-ms-examples": { + "SetVirtualNetworkGatewayConnectionSharedKey": { "$ref": "./examples/VirtualNetworkGatewayConnectionSetSharedKey.json" } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_GetSharedKey", + "description": "The Get VirtualNetworkGatewayConnectionSharedKey operation retrieves information about the specified virtual network gateway connection shared key through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection shared key name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGatewayConnection resources.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayConnectionSharedKey": { "$ref": "./examples/VirtualNetworkGatewayConnectionGetSharedKey.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections": { + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_List", + "description": "The List VirtualNetworkGatewayConnections operation retrieves all the virtual network gateways connections created.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation resets the virtual network gateway connection shared key.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListResult" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewayConnectionsinResourceGroup": { "$ref": "./examples/VirtualNetworkGatewayConnectionsList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey/reset": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_ResetSharedKey", + "description": "The VirtualNetworkGatewayConnectionResetSharedKey operation resets the virtual network gateway connection shared key for passed virtual network gateway connection in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection reset shared key Name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionResetSharedKey" + }, + "description": "Parameters supplied to the begin reset virtual network gateway connection shared key operation through network resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation sets the virtual network gateway connection shared key.", + "schema": { + "$ref": "#/definitions/ConnectionResetSharedKey" + } + }, + "202": { + "description": "" + } + }, + "x-ms-examples": { + "ResetVirtualNetworkGatewayConnectionSharedKey": { "$ref": "./examples/VirtualNetworkGatewayConnectionResetSharedKey.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}": { + "put": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_CreateOrUpdate", + "description": "Creates or updates a local network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + }, + "description": "Parameters supplied to the create or update local network gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + } + }, + "x-ms-examples": { + "CreateLocalNetworkGateway": { "$ref": "./examples/LocalNetworkGatewayCreate.json" } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_Get", + "description": "Gets the specified local network gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + } + }, + "x-ms-examples": { + "GetLocalNetworkGateway": { "$ref": "./examples/LocalNetworkGatewayGet.json" } + } + }, + "delete": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_Delete", + "description": "Deletes the specified local network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "DeleteLocalNetworkGateway": { "$ref": "./examples/LocalNetworkGatewayDelete.json" } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_UpdateTags", + "description": "Updates a local network gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update local network gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + } + }, + "x-ms-examples": { + "UpdateLocalNetworkGatewayTags": { "$ref": "./examples/LocalNetworkGatewayUpdateTags.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways": { + "get": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_List", + "description": "Gets all the local network gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LocalNetworkGateway resources.", + "schema": { + "$ref": "#/definitions/LocalNetworkGatewayListResult" + } + } + }, + "x-ms-examples": { + "ListLocalNetworkGateways": { "$ref": "./examples/LocalNetworkGatewayList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualNetworkGatewayIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAllocationMethod": { + "type": "string", + "description": "The private IP allocation method. Possible values are: 'Static' and 'Dynamic'.", + "enum": [ + "Static", + "Dynamic" + ], + "x-ms-enum": { + "name": "IPAllocationMethod", + "modelAsString": true + } + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the public IP resource." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of VirtualNetworkGatewayIPConfiguration" + }, + "VirtualNetworkGatewayIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayIPConfigurationPropertiesFormat", + "description": "Properties of the virtual network gateway ip configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration for virtual network gateway" + }, + "VirtualNetworkGatewayPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayIPConfiguration" + }, + "description": "IP configurations for virtual network gateway." + }, + "gatewayType": { + "type": "string", + "description": "The type of this virtual network gateway. Possible values are: 'Vpn' and 'ExpressRoute'.", + "enum": [ + "Vpn", + "ExpressRoute" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayType", + "modelAsString": true + } + }, + "vpnType": { + "type": "string", + "description": "The type of this virtual network gateway. Possible values are: 'PolicyBased' and 'RouteBased'.", + "enum": [ + "PolicyBased", + "RouteBased" + ], + "x-ms-enum": { + "name": "VpnType", + "modelAsString": true + } + }, + "enableBgp": { + "type": "boolean", + "description": "Whether BGP is enabled for this virtual network gateway or not." + }, + "activeActive": { + "type": "boolean", + "description": "ActiveActive flag" + }, + "gatewayDefaultSite": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference of the LocalNetworkGateway resource which represents local network site having default routes. Assign Null value in case of removing existing default site setting." + }, + "sku": { + "$ref": "#/definitions/VirtualNetworkGatewaySku", + "description": "The reference of the VirtualNetworkGatewaySku resource which represents the SKU selected for Virtual network gateway." + }, + "vpnClientConfiguration": { + "$ref": "#/definitions/VpnClientConfiguration", + "description": "The reference of the VpnClientConfiguration resource which represents the P2S VpnClient configurations." + }, + "bgpSettings": { + "$ref": "#/definitions/BgpSettings", + "description": "Virtual network gateway's BGP speaker settings." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the VirtualNetworkGateway resource." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the VirtualNetworkGateway resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "VirtualNetworkGateway properties" + }, + "VpnClientRootCertificatePropertiesFormat": { + "properties": { + "publicCertData": { + "type": "string", + "description": "The certificate public data." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the VPN client root certificate resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "required": [ + "publicCertData" + ], + "description": "Properties of SSL certificates of application gateway" + }, + "VpnClientRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnClientRootCertificatePropertiesFormat", + "description": "Properties of the vpn client root certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "properties" + ], + "description": "VPN client root certificate of virtual network gateway" + }, + "VpnClientRevokedCertificatePropertiesFormat": { + "properties": { + "thumbprint": { + "type": "string", + "description": "The revoked VPN client certificate thumbprint." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the VPN client revoked certificate resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of the revoked VPN client certificate of virtual network gateway." + }, + "VpnClientRevokedCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnClientRevokedCertificatePropertiesFormat", + "description": "Properties of the vpn client revoked certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VPN client revoked certificate of virtual network gateway." + }, + "VpnClientConfiguration": { + "properties": { + "vpnClientAddressPool": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference of the address space resource which represents Address space for P2S VpnClient." + }, + "vpnClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientRootCertificate" + }, + "description": "VpnClientRootCertificate for virtual network gateway." + }, + "vpnClientRevokedCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientRevokedCertificate" + }, + "description": "VpnClientRevokedCertificate for Virtual network gateway." + }, + "vpnClientProtocols": { + "type": "array", + "items": { + "type": "string", + "description": "VPN client protocol enabled for the virtual network gateway.", + "enum": [ + "IkeV2", + "SSTP", + "OpenVPN" + ], + "x-ms-enum": { + "name": "VpnClientProtocol", + "modelAsString": true + } + }, + "description": "VpnClientProtocols for Virtual network gateway." + }, + "vpnClientIpsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "VpnClientIpsecPolicies for virtual network gateway P2S client." + }, + "radiusServerAddress": { + "type": "string", + "description": "The radius server address property of the VirtualNetworkGateway resource for vpn client connection." + }, + "radiusServerSecret": { + "type": "string", + "description": "The radius secret property of the VirtualNetworkGateway resource for vpn client connection." + } + }, + "description": "VpnClientConfiguration for P2S client." + }, + "VirtualNetworkGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Gateway SKU name.", + "enum": [ + "Basic", + "HighPerformance", + "Standard", + "UltraPerformance", + "VpnGw1", + "VpnGw2", + "VpnGw3", + "VpnGw1AZ", + "VpnGw2AZ", + "VpnGw3AZ", + "ErGw1AZ", + "ErGw2AZ", + "ErGw3AZ" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewaySkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Gateway SKU tier.", + "enum": [ + "Basic", + "HighPerformance", + "Standard", + "UltraPerformance", + "VpnGw1", + "VpnGw2", + "VpnGw3", + "VpnGw1AZ", + "VpnGw2AZ", + "VpnGw3AZ", + "ErGw1AZ", + "ErGw2AZ", + "ErGw3AZ" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewaySkuTier", + "modelAsString": true + } + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "The capacity." + } + }, + "description": "VirtualNetworkGatewaySku details" + }, + "BgpSettings": { + "properties": { + "asn": { + "type": "integer", + "format": "int64", + "description": "The BGP speaker's ASN." + }, + "bgpPeeringAddress": { + "type": "string", + "description": "The BGP peering address and BGP identifier of this BGP speaker." + }, + "peerWeight": { + "type": "integer", + "format": "int32", + "description": "The weight added to routes learned from this BGP speaker." + } + }, + "description": "BGP settings details" + }, + "BgpPeerStatus": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The virtual network gateway's local address" + }, + "neighbor": { + "type": "string", + "readOnly": true, + "description": "The remote BGP peer" + }, + "asn": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The autonomous system number of the remote BGP peer" + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The BGP peer state", + "enum": [ + "Unknown", + "Stopped", + "Idle", + "Connecting", + "Connected" + ], + "x-ms-enum": { + "name": "BgpPeerState", + "modelAsString": true + } + }, + "connectedDuration": { + "type": "string", + "readOnly": true, + "description": "For how long the peering has been up" + }, + "routesReceived": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of routes learned from this peer" + }, + "messagesSent": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of BGP messages sent" + }, + "messagesReceived": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of BGP messages received" + } + }, + "description": "BGP peer status details" + }, + "GatewayRoute": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The gateway's local address" + }, + "network": { + "type": "string", + "readOnly": true, + "description": "The route's network prefix" + }, + "nextHop": { + "type": "string", + "readOnly": true, + "description": "The route's next hop" + }, + "sourcePeer": { + "type": "string", + "readOnly": true, + "description": "The peer this route was learned from" + }, + "origin": { + "type": "string", + "readOnly": true, + "description": "The source this route was learned from" + }, + "asPath": { + "type": "string", + "readOnly": true, + "description": "The route's AS path sequence" + }, + "weight": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The route's weight" + } + }, + "description": "Gateway routing details" + }, + "VirtualNetworkGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayPropertiesFormat", + "description": "Properties of the virtual network gateway." + }, + "etag": { + "type": "string", + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information" + }, + "VpnClientParameters": { + "properties": { + "processorArchitecture": { + "type": "string", + "description": "VPN client Processor Architecture. Possible values are: 'AMD64' and 'X86'.", + "enum": [ + "Amd64", + "X86" + ], + "x-ms-enum": { + "name": "ProcessorArchitecture", + "modelAsString": true + } + }, + "authenticationMethod": { + "type": "string", + "description": "VPN client Authentication Method. Possible values are: 'EAPTLS' and 'EAPMSCHAPv2'.", + "enum": [ + "EAPTLS", + "EAPMSCHAPv2" + ], + "x-ms-enum": { + "name": "AuthenticationMethod", + "modelAsString": true + } + }, + "radiusServerAuthCertificate": { + "type": "string", + "description": "The public certificate data for the radius server authentication certificate as a Base-64 encoded string. Required only if external radius authentication has been configured with EAPTLS authentication." + }, + "clientRootCertificates": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of client root certificates public certificate data encoded as Base-64 strings. Optional parameter for external radius based authentication with EAPTLS." + } + }, + "description": "Vpn Client Parameters for package generation" + }, + "VirtualNetworkGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGateway" + }, + "description": "Gets a list of VirtualNetworkGateway resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworkGateways API service call." + }, + "BgpPeerStatusListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BgpPeerStatus" + }, + "description": "List of BGP peers" + } + }, + "description": "Response for list BGP peer status API service call" + }, + "GatewayRouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GatewayRoute" + }, + "description": "List of gateway routes" + } + }, + "description": "List of virtual network gateway routes" + }, + "TunnelConnectionHealth": { + "properties": { + "tunnel": { + "readOnly": true, + "type": "string", + "description": "Tunnel name." + }, + "connectionStatus": { + "readOnly": true, + "type": "string", + "description": "Virtual network Gateway connection status", + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionStatus", + "modelAsString": true + } + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The Ingress Bytes Transferred in this connection" + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The Egress Bytes Transferred in this connection" + }, + "lastConnectionEstablishedUtcTime": { + "readOnly": true, + "type": "string", + "description": "The time at which connection was established in Utc format." + } + }, + "description": "VirtualNetworkGatewayConnection properties" + }, + "VirtualNetworkGatewayConnectionPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorizationKey." + }, + "virtualNetworkGateway1": { + "$ref": "#/definitions/VirtualNetworkGateway", + "description": "The reference to virtual network gateway resource." + }, + "virtualNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkGateway", + "description": "The reference to virtual network gateway resource." + }, + "localNetworkGateway2": { + "$ref": "#/definitions/LocalNetworkGateway", + "description": "The reference to local network gateway resource." + }, + "connectionType": { + "type": "string", + "description": "Gateway connection type. Possible values are: 'Ipsec','Vnet2Vnet','ExpressRoute', and 'VPNClient.", + "enum": [ + "IPsec", + "Vnet2Vnet", + "ExpressRoute", + "VPNClient" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionType", + "modelAsString": true + } + }, + "connectionProtocol": { + "$ref": "#/definitions/ConnectionProtocol", + "description": "Connection protocol used for this connection" + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "The routing weight." + }, + "sharedKey": { + "type": "string", + "description": "The IPSec shared key." + }, + "connectionStatus": { + "readOnly": true, + "type": "string", + "description": "Virtual network Gateway connection status. Possible values are 'Unknown', 'Connecting', 'Connected' and 'NotConnected'.", + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionStatus", + "modelAsString": true + } + }, + "tunnelConnectionStatus": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TunnelConnectionHealth" + }, + "description": "Collection of all tunnels' connection health status." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The egress bytes transferred in this connection." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The ingress bytes transferred in this connection." + }, + "peer": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to peerings resource." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag" + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the VirtualNetworkGatewayConnection resource." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the VirtualNetworkGatewayConnection resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + }, + "expressRouteGatewayBypass": { + "type": "boolean", + "description": "Bypass ExpressRoute Gateway for data forwarding" + } + }, + "required": [ + "virtualNetworkGateway1", + "connectionType" + ], + "description": "VirtualNetworkGatewayConnection properties" + }, + "VirtualNetworkGatewayConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionPropertiesFormat", + "description": "Properties of the virtual network gateway connection." + }, + "etag": { + "type": "string", + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information" + }, + "VirtualNetworkGatewayConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + }, + "description": "Gets a list of VirtualNetworkGatewayConnection resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworkGatewayConnections API service call" + }, + "ConnectionResetSharedKey": { + "properties": { + "keyLength": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 128, + "description": "The virtual network connection reset shared key length, should between 1 and 128." + } + }, + "required": [ + "keyLength" + ], + "description": "The virtual network connection reset shared key" + }, + "ConnectionSharedKey": { + "properties": { + "value": { + "type": "string", + "description": "The virtual network connection shared key value." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "value" + ], + "description": "Response for GetConnectionSharedKey API service call" + }, + "IpsecPolicy": { + "properties": { + "saLifeTimeSeconds": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to site VPN tunnel." + }, + "saDataSizeKilobytes": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for a site to site VPN tunnel." + }, + "ipsecEncryption": { + "type": "string", + "description": "The IPSec encryption algorithm (IKE phase 1).", + "enum": [ + "None", + "DES", + "DES3", + "AES128", + "AES192", + "AES256", + "GCMAES128", + "GCMAES192", + "GCMAES256" + ], + "x-ms-enum": { + "name": "IpsecEncryption", + "modelAsString": true + } + }, + "ipsecIntegrity": { + "type": "string", + "description": "The IPSec integrity algorithm (IKE phase 1).", + "enum": [ + "MD5", + "SHA1", + "SHA256", + "GCMAES128", + "GCMAES192", + "GCMAES256" + ], + "x-ms-enum": { + "name": "IpsecIntegrity", + "modelAsString": true + } + }, + "ikeEncryption": { + "type": "string", + "description": "The IKE encryption algorithm (IKE phase 2).", + "enum": [ + "DES", + "DES3", + "AES128", + "AES192", + "AES256", + "GCMAES256", + "GCMAES128" + ], + "x-ms-enum": { + "name": "IkeEncryption", + "modelAsString": true + } + }, + "ikeIntegrity": { + "type": "string", + "description": "The IKE integrity algorithm (IKE phase 2).", + "enum": [ + "MD5", + "SHA1", + "SHA256", + "SHA384", + "GCMAES256", + "GCMAES128" + ], + "x-ms-enum": { + "name": "IkeIntegrity", + "modelAsString": true + } + }, + "dhGroup": { + "type": "string", + "description": "The DH Groups used in IKE Phase 1 for initial SA.", + "enum": [ + "None", + "DHGroup1", + "DHGroup2", + "DHGroup14", + "DHGroup2048", + "ECP256", + "ECP384", + "DHGroup24" + ], + "x-ms-enum": { + "name": "DhGroup", + "modelAsString": true + } + }, + "pfsGroup": { + "type": "string", + "description": "The Pfs Groups used in IKE Phase 2 for new child SA.", + "enum": [ + "None", + "PFS1", + "PFS2", + "PFS2048", + "ECP256", + "ECP384", + "PFS24", + "PFS14", + "PFSMM" + ], + "x-ms-enum": { + "name": "PfsGroup", + "modelAsString": true + } + } + }, + "required": [ + "saLifeTimeSeconds", + "saDataSizeKilobytes", + "ipsecEncryption", + "ipsecIntegrity", + "ikeEncryption", + "ikeIntegrity", + "dhGroup", + "pfsGroup" + ], + "description": "An IPSec Policy configuration for a virtual network gateway connection" + }, + "ConnectionProtocol": { + "type": "string", + "description": "Gateway connection protocol. Possible values are: 'IKEv2', 'IKEv1'.", + "enum": [ + "IKEv2", + "IKEv1" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionProtocol", + "modelAsString": true + } + }, + "VpnClientIPsecParameters": { + "properties": { + "saLifeTimeSeconds": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for P2S client." + }, + "saDataSizeKilobytes": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for P2S client.." + }, + "ipsecEncryption": { + "type": "string", + "description": "The IPSec encryption algorithm (IKE phase 1).", + "enum": [ + "None", + "DES", + "DES3", + "AES128", + "AES192", + "AES256", + "GCMAES128", + "GCMAES192", + "GCMAES256" + ], + "x-ms-enum": { + "name": "IpsecEncryption", + "modelAsString": true + } + }, + "ipsecIntegrity": { + "type": "string", + "description": "The IPSec integrity algorithm (IKE phase 1).", + "enum": [ + "MD5", + "SHA1", + "SHA256", + "GCMAES128", + "GCMAES192", + "GCMAES256" + ], + "x-ms-enum": { + "name": "IpsecIntegrity", + "modelAsString": true + } + }, + "ikeEncryption": { + "type": "string", + "description": "The IKE encryption algorithm (IKE phase 2).", + "enum": [ + "DES", + "DES3", + "AES128", + "AES192", + "AES256", + "GCMAES256", + "GCMAES128" + ], + "x-ms-enum": { + "name": "IkeEncryption", + "modelAsString": true + } + }, + "ikeIntegrity": { + "type": "string", + "description": "The IKE integrity algorithm (IKE phase 2).", + "enum": [ + "MD5", + "SHA1", + "SHA256", + "SHA384", + "GCMAES256", + "GCMAES128" + ], + "x-ms-enum": { + "name": "IkeIntegrity", + "modelAsString": true + } + }, + "dhGroup": { + "type": "string", + "description": "The DH Groups used in IKE Phase 1 for initial SA.", + "enum": [ + "None", + "DHGroup1", + "DHGroup2", + "DHGroup14", + "DHGroup2048", + "ECP256", + "ECP384", + "DHGroup24" + ], + "x-ms-enum": { + "name": "DhGroup", + "modelAsString": true + } + }, + "pfsGroup": { + "type": "string", + "description": "The Pfs Groups used in IKE Phase 2 for new child SA.", + "enum": [ + "None", + "PFS1", + "PFS2", + "PFS2048", + "ECP256", + "ECP384", + "PFS24", + "PFS14", + "PFSMM" + ], + "x-ms-enum": { + "name": "PfsGroup", + "modelAsString": true + } + } + }, + "required": [ + "saLifeTimeSeconds", + "saDataSizeKilobytes", + "ipsecEncryption", + "ipsecIntegrity", + "ikeEncryption", + "ikeIntegrity", + "dhGroup", + "pfsGroup" + ], + "description": "An IPSec parameters for a virtual network gateway P2S connection." + }, + "LocalNetworkGatewayPropertiesFormat": { + "properties": { + "localNetworkAddressSpace": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "Local network site address space." + }, + "gatewayIpAddress": { + "type": "string", + "description": "IP address of local network gateway." + }, + "bgpSettings": { + "$ref": "#/definitions/BgpSettings", + "description": "Local network gateway's BGP speaker settings." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the LocalNetworkGateway resource." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the LocalNetworkGateway resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "LocalNetworkGateway properties" + }, + "LocalNetworkGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LocalNetworkGatewayPropertiesFormat", + "description": "Properties of the local network gateway." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information" + }, + "LocalNetworkGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LocalNetworkGateway" + }, + "description": "A list of local network gateways that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLocalNetworkGateways API service call." + }, + "virtualNetworkConnectionGatewayReference": { + "properties": { + "id": { + "type": "string", + "description": "The ID of VirtualNetworkGateway or LocalNetworkGateway resource." + } + }, + "required": [ + "id" + ], + "description": "A reference to VirtualNetworkGateway or LocalNetworkGateway resource." + }, + "VirtualNetworkGatewayConnectionListEntityPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorizationKey." + }, + "virtualNetworkGateway1": { + "$ref": "#/definitions/virtualNetworkConnectionGatewayReference", + "description": "The reference to virtual network gateway resource." + }, + "virtualNetworkGateway2": { + "$ref": "#/definitions/virtualNetworkConnectionGatewayReference", + "description": "The reference to virtual network gateway resource." + }, + "localNetworkGateway2": { + "$ref": "#/definitions/virtualNetworkConnectionGatewayReference", + "description": "The reference to local network gateway resource." + }, + "connectionType": { + "type": "string", + "description": "Gateway connection type. Possible values are: 'Ipsec','Vnet2Vnet','ExpressRoute', and 'VPNClient.", + "enum": [ + "IPsec", + "Vnet2Vnet", + "ExpressRoute", + "VPNClient" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionType", + "modelAsString": true + } + }, + "connectionProtocol": { + "$ref": "#/definitions/ConnectionProtocol", + "description": "Connection protocol used for this connection" + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "The routing weight." + }, + "sharedKey": { + "type": "string", + "description": "The IPSec shared key." + }, + "connectionStatus": { + "readOnly": true, + "type": "string", + "description": "Virtual network Gateway connection status. Possible values are 'Unknown', 'Connecting', 'Connected' and 'NotConnected'.", + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionStatus", + "modelAsString": true + } + }, + "tunnelConnectionStatus": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TunnelConnectionHealth" + }, + "description": "Collection of all tunnels' connection health status." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The egress bytes transferred in this connection." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The ingress bytes transferred in this connection." + }, + "peer": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to peerings resource." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag" + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "resourceGuid": { + "type": "string", + "description": "The resource GUID property of the VirtualNetworkGatewayConnection resource." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the VirtualNetworkGatewayConnection resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + }, + "expressRouteGatewayBypass": { + "type": "boolean", + "description": "Bypass ExpressRoute Gateway for data forwarding" + } + }, + "required": [ + "virtualNetworkGateway1", + "connectionType" + ], + "description": "VirtualNetworkGatewayConnection properties" + }, + "VirtualNetworkGatewayConnectionListEntity": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListEntityPropertiesFormat", + "description": "Properties of the virtual network gateway connection." + }, + "etag": { + "type": "string", + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information" + }, + "VirtualNetworkGatewayListConnectionsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListEntity" + }, + "description": "Gets a list of VirtualNetworkGatewayConnection resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the VirtualNetworkGatewayListConnections API service call" + }, + "VpnDeviceScriptParameters": { + "properties": { + "vendor": { + "type": "string", + "description": "The vendor for the vpn device." + }, + "deviceFamily": { + "type": "string", + "description": "The device family for the vpn device." + }, + "firmwareVersion": { + "type": "string", + "description": "The firmware version for the vpn device." + } + }, + "description": "Vpn device configuration script generation parameters" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/virtualNetworkTap.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/virtualNetworkTap.json new file mode 100644 index 000000000000..3373b73884a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/virtualNetworkTap.json @@ -0,0 +1,391 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps/{tapName}": { + "delete": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_Delete", + "description": "Deletes the specified virtual network tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network tap." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. Sets 'Deleting' provisioningState until the operation completes. Returns an operation URI that can be queried to find the current state of the operation." + }, + "204": { + "description": "Request successful. Resource does not exist." + } + }, + "x-ms-examples": + { + "Delete Virtual Network Tap resource": { "$ref": "./examples/VirtualNetworkTapDelete.json" } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_Get", + "description": "Gets information about the specified virtual network tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of virtual network tap." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + } + }, + "x-ms-examples": + { + "Get Virtual Network Tap": { "$ref": "./examples/VirtualNetworkTapGet.json" } + } + }, + "put": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_CreateOrUpdate", + "description": "Creates or updates a Virtual Network Tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network tap." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + }, + "description": "Parameters supplied to the create or update virtual network tap operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + } + }, + "x-ms-examples": + { + "Create Virtual Network Tap": { "$ref": "./examples/VirtualNetworkTapCreate.json" } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_UpdateTags", + "description": "Updates an VirtualNetworkTap tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap." + }, + { + "name": "tapParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VirtualNetworkTap tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + } + }, + "x-ms-examples": { + "Update virtual network tap tags": { "$ref": "./examples/VirtualNetworkTapUpdateTags.json" } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworkTaps": { + "get": { + "tags": [ + "VirtualNetworkTaps" + ], + "operationId": "VirtualNetworkTaps_ListAll", + "description": "Gets all the VirtualNetworkTaps in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Virtual Network Tap resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTapListResult" + } + } + }, + "x-ms-examples": { + "List all virtual network taps": { "$ref": "./examples/VirtualNetworkTapListAll.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps": { + "get": { + "tags": [ + "VirtualNetworkTaps" + ], + "operationId": "VirtualNetworkTaps_ListByResourceGroup", + "description": "Gets all the VirtualNetworkTaps in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Virtual Network Tap resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTapListResult" + } + } + }, + "x-ms-examples": { + "List virtual network taps in resource group": { "$ref": "./examples/VirtualNetworkTapList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } +}, +"definitions": { + "VirtualNetworkTap": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkTapPropertiesFormat", + "description": "Virtual Network Tap Properties." + }, + "etag": { + "type": "string", + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Virtual Network Tap resource" + }, + "VirtualNetworkTapPropertiesFormat": { + "description": "Virtual Network Tap properties.", + "properties": { + "networkInterfaceTapConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceTapConfiguration", + "description": "The reference of the Network Interface." + }, + "description": "Specifies the list of resource IDs for the network interface IP configuration that needs to be tapped." + }, + "resourceGuid": { + "type": "string", + "readOnly": true, + "description": "The resourceGuid property of the virtual network tap." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the virtual network tap. Possible values are: 'Updating', 'Deleting', and 'Failed'." + }, + "destinationNetworkInterfaceIPConfiguration": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "The reference to the private IP Address of the collector nic that will receive the tap" + }, + "destinationLoadBalancerFrontEndIPConfiguration": { + "$ref": "./loadBalancer.json#/definitions/FrontendIPConfiguration", + "description": "The reference to the private IP address on the internal Load Balancer that will receive the tap" + }, + "destinationPort": { + "type": "integer", + "description": "The VXLAN destination port that will receive the tapped traffic." + } + } + }, + "VirtualNetworkTapListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkTap" + }, + "description": "A list of VirtualNetworkTaps in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListVirtualNetworkTap API service call." + } +}, +"parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/virtualWan.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/virtualWan.json new file mode 100644 index 000000000000..07d2689fadc1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/virtualWan.json @@ -0,0 +1,3348 @@ +{ + "swagger": "2.0", + "info": { + "title": "VirtualWANAsAServiceManagementClient", + "description": "REST API for Azure VirtualWAN As a Service.", + "version": "2018-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{VirtualWANName}": { + "get": { + "operationId": "VirtualWans_Get", + "x-ms-examples": { + "VirtualWANGet": { + "$ref": "./examples/VirtualWANGet.json" + } + }, + "description": "Retrieves the details of a VirtualWAN.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN retrieved.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "VirtualWans_CreateOrUpdate", + "x-ms-examples": { + "VirtualWANCreate": { + "$ref": "./examples/VirtualWANPut.json" + } + }, + "description": "Creates a VirtualWAN resource if it doesn't exist else updates the existing VirtualWAN.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "WANParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualWAN" + }, + "description": "Parameters supplied to create or update VirtualWAN." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN created or updated.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualWAN resource.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "VirtualWANs" + ], + "operationId": "VirtualWans_UpdateTags", + "x-ms-examples": { + "VirtualWANUpdate": { + "$ref": "./examples/VirtualWANUpdateTags.json" + } + }, + "description": "Updates a VirtualWAN tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "WANParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to Update VirtualWAN tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN updated.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VirtualWAN updated.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "VirtualWans_Delete", + "x-ms-examples": { + "VirtualWANDelete": { + "$ref": "./examples/VirtualWANDelete.json" + } + }, + "description": "Deletes a VirtualWAN.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualWAN deleted." + }, + "202": { + "description": "Request received successfully. VirtualWAN deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualWANs exist by the name provided." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans": { + "get": { + "operationId": "VirtualWans_ListByResourceGroup", + "x-ms-examples": { + "VirtualWANListByResourceGroup": { + "$ref": "./examples/VirtualWANListByResourceGroup.json" + } + }, + "description": "Lists all the VirtualWANs in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualWANs in the resource group.", + "schema": { + "$ref": "#/definitions/ListVirtualWANsResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualWans": { + "get": { + "operationId": "VirtualWans_List", + "x-ms-examples": { + "VirtualWANList": { + "$ref": "./examples/VirtualWANList.json" + } + }, + "description": "Lists all the VirtualWANs in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualWANs in the subscription.", + "schema": { + "$ref": "#/definitions/ListVirtualWANsResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}": { + "get": { + "operationId": "VpnSites_Get", + "x-ms-examples": { + "VpnSiteGet": { + "$ref": "./examples/VpnSiteGet.json" + } + }, + "description": "Retrieves the details of a VPNsite.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite retrieved.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "VpnSites_CreateOrUpdate", + "x-ms-examples": { + "VpnSiteCreate": { + "$ref": "./examples/VpnSitePut.json" + } + }, + "description": "Creates a VpnSite resource if it doesn't exist else updates the existing VpnSite.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnSiteParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnSite" + }, + "description": "Parameters supplied to create or update VpnSite." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite created or updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VpnSite created or updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "VpnSites" + ], + "operationId": "VpnSites_UpdateTags", + "x-ms-examples": { + "VpnSiteUpdate": { + "$ref": "./examples/VpnSiteUpdateTags.json" + } + }, + "description": "Updates VpnSite tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnSiteParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VpnSite tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VpnSite updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "VpnSites_Delete", + "x-ms-examples": { + "VpnSiteDelete": { + "$ref": "./examples/VpnSiteDelete.json" + } + }, + "description": "Deletes a VpnSite.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VpnSite deleted." + }, + "202": { + "description": "Request received successfully. VpnSite deletion is in progress" + }, + "204": { + "description": "No VpnSites exist by the name provided." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites": { + "get": { + "operationId": "VpnSites_ListByResourceGroup", + "x-ms-examples": { + "VpnSiteListByResourceGroup": { + "$ref": "./examples/VpnSiteListByResourceGroup.json" + } + }, + "description": "Lists all the vpnSites in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnSites in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnSitesResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnSites": { + "get": { + "operationId": "VpnSites_List", + "x-ms-examples": { + "VpnSiteList": { + "$ref": "./examples/VpnSiteList.json" + } + }, + "description": "Lists all the VpnSites in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnSites in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnSitesResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/vpnConfiguration": { + "post": { + "operationId": "VpnSitesConfiguration_Download", + "x-ms-examples": { + "VpnSitesConfigurationDownload": { + "$ref": "./examples/VpnSitesConfigurationDownload.json" + } + }, + "description": "Gives the sas-url to download the configurations for vpn-sites in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN for which configuration of all vpn-sites is needed." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GetVpnSitesConfigurationRequest" + }, + "description": "Parameters supplied to download vpn-sites configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Follow the location header for sas-url to output blob." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously. Follow the location header for sas-url to output blob." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/supportedSecurityProviders": { + "get": { + "operationId": "SupportedSecurityProviders", + "x-ms-examples": { + "supportedSecurityProviders": { + "$ref": "./examples/VirtualWanSupportedSecurityProviders.json" + } + }, + "description": "Gives the supported security providers for the virtual wan.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN for which supported security providers are needed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the object containing supported security providers.", + "schema": { + "$ref": "#/definitions/VirtualWanSecurityProviders" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}": { + "get": { + "operationId": "VirtualHubs_Get", + "x-ms-examples": { + "VirtualHubGet": { + "$ref": "./examples/VirtualHubGet.json" + } + }, + "description": "Retrieves the details of a VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub retrieved.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "VirtualHubs_CreateOrUpdate", + "x-ms-examples": { + "VirtualHubPut": { + "$ref": "./examples/VirtualHubPut.json" + } + }, + "description": "Creates a VirtualHub resource if it doesn't exist else updates the existing VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualHub" + }, + "description": "Parameters supplied to create or update VirtualHub." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VirtualHub created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "VirtualWANs" + ], + "operationId": "VirtualHubs_UpdateTags", + "x-ms-examples": { + "VirtualHubUpdate": { + "$ref": "./examples/VirtualHubUpdateTags.json" + } + }, + "description": "Updates VirtualHub tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VirtualHub tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VirtualHub updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "VirtualHubs_Delete", + "x-ms-examples": { + "VirtualHubDelete": { + "$ref": "./examples/VirtualHubDelete.json" + } + }, + "description": "Deletes a VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualHub deleted." + }, + "202": { + "description": "Request received successfully. VirtualHub deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualHubs exist by the name provided." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs": { + "get": { + "operationId": "VirtualHubs_ListByResourceGroup", + "x-ms-examples": { + "VirtualHubListByResourceGroup": { + "$ref": "./examples/VirtualHubListByResourceGroup.json" + } + }, + "description": "Lists all the VirtualHubs in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubs in the resource group.", + "schema": { + "$ref": "#/definitions/ListVirtualHubsResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualHubs": { + "get": { + "operationId": "VirtualHubs_List", + "x-ms-examples": { + "VirtualHubList": { + "$ref": "./examples/VirtualHubList.json" + } + }, + "description": "Lists all the VirtualHubs in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubs in the subscription.", + "schema": { + "$ref": "#/definitions/ListVirtualHubsResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections/{connectionName}": { + "get": { + "operationId": "HubVirtualNetworkConnections_Get", + "x-ms-examples": { + "HubVirtualNetworkConnectionGet": { + "$ref": "./examples/HubVirtualNetworkConnectionGet.json" + } + }, + "description": "Retrieves the details of a HubVirtualNetworkConnection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the HubVirtualNetworkConnection retrieved.", + "schema": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections": { + "get": { + "operationId": "HubVirtualNetworkConnections_List", + "x-ms-examples": { + "HubVirtualNetworkConnectionList": { + "$ref": "./examples/HubVirtualNetworkConnectionList.json" + } + }, + "description": "Retrieves the details of all HubVirtualNetworkConnections.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the HubVirtualNetworkConnections for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListHubVirtualNetworkConnectionsResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}": { + "get": { + "operationId": "VpnGateways_Get", + "x-ms-examples": { + "VpnGatewayGet": { + "$ref": "./examples/VpnGatewayGet.json" + } + }, + "description": "Retrieves the details of a virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "VpnGateways_CreateOrUpdate", + "x-ms-examples": { + "VpnGatewayPut": { + "$ref": "./examples/VpnGatewayPut.json" + } + }, + "description": "Creates a virtual wan vpn gateway if it doesn't exist else updates the existing gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "vpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnGateway" + }, + "description": "Parameters supplied to create or Update a virtual wan vpn gateway." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan vpn Gateway created or updated.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "201": { + "description": "Request successful. Returns the details of the virtual wan vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "VpnGateways" + ], + "operationId": "VpnGateways_UpdateTags", + "x-ms-examples": { + "VpnGatewayUpdate": { + "$ref": "./examples/VpnGatewayUpdateTags.json" + } + }, + "description": "Updates virtual wan vpn gateway tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "vpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update a virtual wan vpn gateway tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "VpnGateways_Delete", + "x-ms-examples": { + "VpnGatewayDelete": { + "$ref": "./examples/VpnGatewayDelete.json" + } + }, + "description": "Deletes a virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Vpn Gateway deleted." + }, + "202": { + "description": "Request received successfully. Vpn Gateway deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No vpn gateways exist by the name provided." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways": { + "get": { + "operationId": "VpnGateways_ListByResourceGroup", + "x-ms-examples": { + "VpnGatewayListByResourceGroup": { + "$ref": "./examples/VpnGatewayListByResourceGroup.json" + } + }, + "description": "Lists all the VpnGateways in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnGateways in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnGatewaysResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnGateways": { + "get": { + "operationId": "VpnGateways_List", + "x-ms-examples": { + "VpnGatewayListBySubscription": { + "$ref": "./examples/VpnGatewayList.json" + } + }, + "description": "Lists all the VpnGateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnGateways in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnGatewaysResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}": { + "get": { + "operationId": "VpnConnections_Get", + "x-ms-examples": { + "VpnConnectionGet": { + "$ref": "./examples/VpnConnectionGet.json" + } + }, + "description": "Retrieves the details of a vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "VpnConnections_CreateOrUpdate", + "x-ms-examples": { + "VpnConnectionPut": { + "$ref": "./examples/VpnConnectionPut.json" + } + }, + "description": "Creates a vpn connection to a scalable vpn gateway if it doesn't exist else updates the existing connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnConnection" + }, + "description": "Parameters supplied to create or Update a VPN Connection." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection created or updated.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "201": { + "description": "Request successful. Returns the details of the vpn connection created or updated.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "VpnConnections_Delete", + "x-ms-examples": { + "VpnConnectionDelete": { + "$ref": "./examples/VpnConnectionDelete.json" + } + }, + "description": "Deletes a vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Vpn Connection deleted." + }, + "202": { + "description": "Request received successfully. Vpn Connection deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No vpn connections exist by the name provided." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections": { + "get": { + "operationId": "VpnConnections_ListByVpnGateway", + "x-ms-examples": { + "VpnConnectionList": { + "$ref": "./examples/VpnConnectionList.json" + } + }, + "description": "Retrieves all vpn connections for a particular virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all Vpn connections for a virtual wan vpn gateway.", + "schema": { + "$ref": "#/definitions/ListVpnConnectionsResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWanName}/p2sVpnServerConfigurations/{p2SVpnServerConfigurationName}": { + "get": { + "operationId": "P2sVpnServerConfigurations_Get", + "x-ms-examples": { + "P2SVpnServerConfigurationGet": { + "$ref": "./examples/P2SVpnServerConfigurationGet.json" + } + }, + "description": "Retrieves the details of a P2SVpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnServerConfiguration." + }, + { + "name": "virtualWanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWan." + }, + { + "name": "p2SVpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnServerConfiguration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the P2SVpnServerConfiguration.", + "schema": { + "$ref": "#/definitions/P2SVpnServerConfiguration" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "P2sVpnServerConfigurations_CreateOrUpdate", + "x-ms-examples": { + "P2SVpnServerConfigurationPut": { + "$ref": "./examples/P2SVpnServerConfigurationPut.json" + } + }, + "description": "Creates a P2SVpnServerConfiguration to associate with a VirtualWan if it doesn't exist else updates the existing P2SVpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "virtualWanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWan." + }, + { + "name": "p2SVpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnServerConfiguration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "p2SVpnServerConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnServerConfiguration" + }, + "description": "Parameters supplied to create or Update a P2SVpnServerConfiguration." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the P2SVpnServerConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/P2SVpnServerConfiguration" + } + }, + "201": { + "description": "Request successful. Returns the details of the P2SVpnServerConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/P2SVpnServerConfiguration" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "P2sVpnServerConfigurations_Delete", + "x-ms-examples": { + "P2SVpnServerConfigurationDelete": { + "$ref": "./examples/P2SVpnServerConfigurationDelete.json" + } + }, + "description": "Deletes a P2SVpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnServerConfiguration." + }, + { + "name": "virtualWanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWan." + }, + { + "name": "p2SVpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnServerConfiguration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. P2SVpnServerConfiguration deleted." + }, + "202": { + "description": "Request received successfully. P2SVpnServerConfiguration deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No P2SVpnServerConfigurations exist by the name provided." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWanName}/p2sVpnServerConfigurations": { + "get": { + "operationId": "P2sVpnServerConfigurations_ListByVirtualWan", + "x-ms-examples": { + "P2SVpnServerConfigurationList": { + "$ref": "./examples/P2SVpnServerConfigurationList.json" + } + }, + "description": "Retrieves all P2SVpnServerConfigurations for a particular VirtualWan.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "virtualWanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all P2SVpnServerConfigurations for a VirtualWan.", + "schema": { + "$ref": "#/definitions/ListP2SVpnServerConfigurationsResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}": { + "get": { + "operationId": "P2sVpnGateways_Get", + "x-ms-examples": { + "P2SVpnGatewayGet": { + "$ref": "./examples/P2SVpnGatewayGet.json" + } + }, + "description": "Retrieves the details of a virtual wan p2s vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "P2sVpnGateways_CreateOrUpdate", + "x-ms-examples": { + "P2SVpnGatewayPut": { + "$ref": "./examples/P2SVpnGatewayPut.json" + } + }, + "description": "Creates a virtual wan p2s vpn gateway if it doesn't exist else updates the existing gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "p2SVpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "Parameters supplied to create or Update a virtual wan p2s vpn gateway." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn Gateway created or updated.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "201": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_UpdateTags", + "x-ms-examples": { + "P2SVpnGatewayUpdate": { + "$ref": "./examples/P2SVpnGatewayUpdateTags.json" + } + }, + "description": "Updates virtual wan p2s vpn gateway tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "p2SVpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update a virtual wan p2s vpn gateway tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "P2sVpnGateways_Delete", + "x-ms-examples": { + "P2SVpnGatewayDelete": { + "$ref": "./examples/P2SVpnGatewayDelete.json" + } + }, + "description": "Deletes a virtual wan p2s vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. P2SVpnGateway deleted." + }, + "202": { + "description": "Request received successfully. P2SVpnGateway deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No p2s vpn gateways exist by the name provided." + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways": { + "get": { + "operationId": "P2sVpnGateways_ListByResourceGroup", + "x-ms-examples": { + "P2SVpnGatewayListByResourceGroup": { + "$ref": "./examples/P2SVpnGatewayListByResourceGroup.json" + } + }, + "description": "Lists all the P2SVpnGateways in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the P2SVpnGateways in the resource group.", + "schema": { + "$ref": "#/definitions/ListP2SVpnGatewaysResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/p2svpnGateways": { + "get": { + "operationId": "P2sVpnGateways_List", + "x-ms-examples": { + "P2SVpnGatewayListBySubscription": { + "$ref": "./examples/P2SVpnGatewayList.json" + } + }, + "description": "Lists all the P2SVpnGateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the P2SVpnGateways in the subscription.", + "schema": { + "$ref": "#/definitions/ListP2SVpnGatewaysResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/generatevpnprofile": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GenerateVpnProfile", + "description": "Generates VPN profile for P2S client of the P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnProfileParameters" + }, + "description": "Parameters supplied to the generate P2SVpnGateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "$ref": "#/definitions/VpnProfileResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + }, + "x-ms-examples": { + "GenerateP2SVpnGatewayVPNProfile": { "$ref": "./examples/P2SVpnGatewayGenerateVpnProfile.json" } + }, + "x-ms-long-running-operation": true + } + } + }, + "definitions": { + "VirtualWanProperties": { + "properties": { + "disableVpnEncryption": { + "type": "boolean", + "description": "Vpn encryption to be disabled or not." + }, + "virtualHubs": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of VirtualHubs in the VirtualWAN." + }, + "vpnSites": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "securityProviderName": { + "type": "string", + "description": "The Security Provider name." + }, + "allowBranchToBranchTraffic": { + "type": "boolean", + "description": "True if branch to branch traffic is allowed." + }, + "allowVnetToVnetTraffic": { + "type": "boolean", + "description": "True if Vnet to Vnet traffic is allowed." + }, + "office365LocalBreakoutCategory": { + "description": "The office local breakout category.", + "$ref": "#/definitions/OfficeTrafficCategory" + }, + "p2SVpnServerConfigurations": { + "type": "array", + "description": "list of all P2SVpnServerConfigurations associated with the virtual wan.", + "items": { + "$ref": "#/definitions/P2SVpnServerConfiguration" + } + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "#/definitions/ProvisioningState" + } + }, + "description": "Parameters for VirtualWAN" + }, + "VirtualWAN": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualWanProperties" + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualWAN Resource." + }, + "ListVirtualWANsResult": { + "description": "Result of the request to list VirtualWANs. It contains a list of VirtualWANs and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualWAN" + }, + "description": "List of VirtualWANs." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteProperties": { + "properties": { + "virtualWan": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualWAN to which the vpnSite belongs" + }, + "deviceProperties": { + "description": "The device properties", + "$ref": "#/definitions/DeviceProperties" + }, + "ipAddress": { + "type": "string", + "description": "The ip-address for the vpn-site." + }, + "siteKey": { + "type": "string", + "description": "The key for vpn-site that can be used for connections." + }, + "addressSpace": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The AddressSpace that contains an array of IP address ranges." + }, + "bgpProperties": { + "$ref": "./virtualNetworkGateway.json#/definitions/BgpSettings", + "description": "The set of bgp properties." + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "#/definitions/ProvisioningState" + }, + "isSecuritySite": { + "type": "boolean", + "description": "IsSecuritySite flag" + } + }, + "description": "Parameters for VpnSite" + }, + "VpnSite": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteProperties" + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnSite Resource." + }, + "ListVpnSitesResult": { + "description": "Result of the request to list VpnSites. It contains a list of VpnSites and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSite" + }, + "description": "List of VpnSites." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "GetVpnSitesConfigurationRequest": { + "properties": { + "vpnSites": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of resource-ids of the vpn-sites for which config is to be downloaded." + }, + "outputBlobSasUrl": { + "type": "string", + "description": "The sas-url to download the configurations for vpn-sites" + } + }, + "description": "List of Vpn-Sites" + }, + "VirtualHubProperties": { + "properties": { + "virtualWan": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualWAN to which the VirtualHub belongs" + }, + "vpnGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VpnGateway associated with this VirtualHub" + }, + "p2SVpnGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The P2SVpnGateway associated with this VirtualHub" + }, + "expressRouteGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The expressRouteGateway associated with this VirtualHub" + }, + "virtualNetworkConnections": { + "type": "array", + "description": "list of all vnet connections with this VirtualHub.", + "items": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "addressPrefix": { + "type": "string", + "description": "Address-prefix for this VirtualHub." + }, + "routeTable": { + "$ref": "#/definitions/VirtualHubRouteTable", + "description": "The routeTable associated with this virtual hub." + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "#/definitions/ProvisioningState" + } + }, + "description": "Parameters for VirtualHub" + }, + "VirtualHubRouteTable": { + "properties" : { + "routes": { + "type": "array", + "description": "list of all routes.", + "items": { + "$ref": "#/definitions/VirtualHubRoute" + } + } + }, + "description" : "VirtualHub route table" + }, + "VirtualHubRoute": { + "properties" : { + "addressPrefixes": { + "type": "array", + "description": "list of all addressPrefixes.", + "items": { + "type": "string" + } + }, + "nextHopIpAddress": { + "type": "string", + "description": "NextHop ip address." + } + }, + "description" : "VirtualHub route" + }, + "VirtualHub": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualHubProperties" + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualHub Resource." + }, + "ListVirtualHubsResult": { + "description": "Result of the request to list VirtualHubs. It contains a list of VirtualHubs and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualHub" + }, + "description": "List of VirtualHubs." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnGatewayProperties": { + "properties": { + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualHub to which the gateway belongs" + }, + "connections": { + "type": "array", + "description": "list of all vpn connections to the gateway.", + "items": { + "$ref": "#/definitions/VpnConnection" + } + }, + "bgpSettings": { + "$ref": "./virtualNetworkGateway.json#/definitions/BgpSettings", + "description": "Local network gateway's BGP speaker settings." + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "#/definitions/ProvisioningState" + }, + "vpnGatewayScaleUnit": { + "type": "integer", + "format": "int32", + "description": "The scale unit for this vpn gateway." + } + }, + "description": "Parameters for VpnGateway" + }, + "VpnGateway": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnGatewayProperties" + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnGateway Resource." + }, + "ListVpnGatewaysResult": { + "description": "Result of the request to list VpnGateways. It contains a list of VpnGateways and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnGateway" + }, + "description": "List of VpnGateways." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnConnectionProperties": { + "properties": { + "remoteVpnSite": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Id of the connected vpn site." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "routing weight for vpn connection." + }, + "connectionStatus": { + "description": "The connection status.", + "$ref": "#/definitions/VpnConnectionStatus" + }, + "vpnConnectionProtocolType": { + "description": "Connection protocol used for this connection", + "$ref": "./virtualNetworkGateway.json#/definitions/ConnectionProtocol" + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Ingress bytes transferred." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Egress bytes transferred." + }, + "connectionBandwidth": { + "type": "integer", + "format": "int32", + "description": "Expected bandwidth in MBPS." + }, + "sharedKey": { + "type": "string", + "description": "SharedKey for the vpn connection." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag" + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "enableRateLimiting": { + "type": "boolean", + "description": "EnableBgp flag" + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security" + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "#/definitions/ProvisioningState" + } + }, + "description": "Parameters for VpnConnection" + }, + "VpnConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnConnectionProperties" + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnConnection Resource." + }, + "ListVpnConnectionsResult": { + "description": "Result of the request to list all vpn connections to a virtual wan vpn gateway. It contains a list of Vpn Connections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnConnection" + }, + "description": "List of Vpn Connections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "HubVirtualNetworkConnectionProperties": { + "properties": { + "remoteVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the remote virtual network." + }, + "allowHubToRemoteVnetTransit": { + "type": "boolean", + "description": "VirtualHub to RemoteVnet transit to enabled or not." + }, + "allowRemoteVnetToUseHubVnetGateways": { + "type": "boolean", + "description": "Allow RemoteVnet to use Virtual Hub's gateways." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security" + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "#/definitions/ProvisioningState" + } + }, + "description": "Parameters for HubVirtualNetworkConnection" + }, + "HubVirtualNetworkConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/HubVirtualNetworkConnectionProperties" + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "HubVirtualNetworkConnection Resource." + }, + "ListHubVirtualNetworkConnectionsResult": { + "description": "List of HubVirtualNetworkConnections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + }, + "description": "List of HubVirtualNetworkConnections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteId": { + "properties": { + "vpnSite": { + "type": "string", + "readOnly": true, + "description": "The resource-uri of the vpn-site for which config is to be fetched." + } + }, + "description": "VpnSite Resource." + }, + "DeviceProperties": { + "properties": { + "deviceVendor": { + "type": "string", + "description": "Name of the device Vendor." + }, + "deviceModel": { + "type": "string", + "description": "Model of the device." + }, + "linkSpeedInMbps": { + "type": "integer", + "format": "int32", + "description": "Link speed." + } + }, + "description": "List of properties of the device." + }, + "VirtualWanSecurityProviders": { + "properties": { + "supportedProviders": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualWanSecurityProvider" + } + } + }, + "description": "Collection of SecurityProviders." + }, + "VirtualWanSecurityProvider": { + "properties": { + "name": { + "type": "string", + "description": "Name of the security provider." + }, + "url": { + "type": "string", + "description": "Url of the security provider." + }, + "type": { + "$ref": "#/definitions/VirtualWanSecurityProviderType", + "description": "Name of the security provider." + } + }, + "description": "Collection of SecurityProviders." + }, + "ProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisisoning state.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "VpnConnectionStatus": { + "type": "string", + "description": "The current state of the vpn connection.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "vpnConnectionStatus", + "modelAsString": true + } + }, + "TunnelConnectionStatus": { + "type": "string", + "description": "The current state of the tunnel.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "tunnelConnectionStatus", + "modelAsString": true + } + }, + "HubVirtualNetworkConnectionStatus": { + "type": "string", + "description": "The current state of the VirtualHub to vnet connection.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "HubVirtualNetworkConnectionStatus", + "modelAsString": true + } + }, + "disableVpnEncryption": { + "type": "boolean", + "description": "Vpn encryption to be disabled or not." + }, + "access": { + "type": "string", + "description": "Access to be allowed or denied.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "access", + "modelAsString": true + } + }, + "OfficeTrafficCategory": { + "type": "string", + "description": "The office traffic category.", + "readOnly": true, + "enum": [ + "Optimize", + "OptimizeAndAllow", + "All", + "None" + ], + "x-ms-enum": { + "name": "officeTrafficCategory", + "modelAsString": true + } + }, + "VirtualWanSecurityProviderType": { + "type": "string", + "description": "The virtual wan security provider type.", + "readOnly": true, + "enum": [ + "External", + "Native" + ], + "x-ms-enum": { + "name": "virtualWanSecurityProviderType", + "modelAsString": true + } + }, + "P2SVpnServerConfigVpnClientRootCertificatePropertiesFormat": { + "properties": { + "publicCertData": { + "type": "string", + "description": "The certificate public data." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the P2SVpnServerConfiguration VPN client root certificate resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "required": [ + "publicCertData" + ], + "description": "Properties of VPN client root certificate of P2SVpnServerConfiguration." + }, + "P2SVpnServerConfigVpnClientRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SVpnServerConfigVpnClientRootCertificatePropertiesFormat", + "description": "Properties of the P2SVpnServerConfiguration VPN client root certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "properties" + ], + "description": "VPN client root certificate of P2SVpnServerConfiguration." + }, + "P2SVpnServerConfigRadiusServerRootCertificatePropertiesFormat": { + "properties": { + "publicCertData": { + "type": "string", + "description": "The certificate public data." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the P2SVpnServerConfiguration Radius Server root certificate resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "required": [ + "publicCertData" + ], + "description": "Properties of Radius Server root certificate of P2SVpnServerConfiguration." + }, + "P2SVpnServerConfigRadiusServerRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SVpnServerConfigRadiusServerRootCertificatePropertiesFormat", + "description": "Properties of the P2SVpnServerConfiguration Radius Server root certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "properties" + ], + "description": "Radius Server root certificate of P2SVpnServerConfiguration." + }, + "P2SVpnServerConfigVpnClientRevokedCertificatePropertiesFormat": { + "properties": { + "thumbprint": { + "type": "string", + "description": "The revoked VPN client certificate thumbprint." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the VPN client revoked certificate resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of the revoked VPN client certificate of P2SVpnServerConfiguration." + }, + "P2SVpnServerConfigVpnClientRevokedCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SVpnServerConfigVpnClientRevokedCertificatePropertiesFormat", + "description": "Properties of the vpn client revoked certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VPN client revoked certificate of P2SVpnServerConfiguration." + }, + "P2SVpnServerConfigRadiusClientRootCertificatePropertiesFormat": { + "properties": { + "thumbprint": { + "type": "string", + "description": "The Radius client root certificate thumbprint." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the Radius client root certificate resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + } + }, + "description": "Properties of the Radius client root certificate of P2SVpnServerConfiguration." + }, + "P2SVpnServerConfigRadiusClientRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SVpnServerConfigRadiusClientRootCertificatePropertiesFormat", + "description": "Properties of the Radius client root certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Radius client root certificate of P2SVpnServerConfiguration." + }, + "P2SVpnServerConfigurationProperties": { + "properties": { + "name": { + "type": "string", + "description": "The name of the P2SVpnServerConfiguration that is unique within a VirtualWan in a resource group. This name can be used to access the resource along with Paren VirtualWan resource name." + }, + "vpnProtocols": { + "type": "array", + "items": { + "type": "string", + "description": "VPN protocol enabled for the P2SVpnServerConfiguration.", + "enum": [ + "IkeV2", + "OpenVPN" + ], + "x-ms-enum": { + "name": "VpnGatewayTunnelingProtocol", + "modelAsString": true + } + }, + "description": "vpnProtocols for the P2SVpnServerConfiguration." + }, + "p2SVpnServerConfigVpnClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/P2SVpnServerConfigVpnClientRootCertificate" + }, + "description": "VPN client root certificate of P2SVpnServerConfiguration." + }, + "p2SVpnServerConfigVpnClientRevokedCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/P2SVpnServerConfigVpnClientRevokedCertificate" + }, + "description": "VPN client revoked certificate of P2SVpnServerConfiguration." + }, + "p2SVpnServerConfigRadiusServerRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/P2SVpnServerConfigRadiusServerRootCertificate" + }, + "description": "Radius Server root certificate of P2SVpnServerConfiguration." + }, + "p2SVpnServerConfigRadiusClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/P2SVpnServerConfigRadiusClientRootCertificate" + }, + "description": "Radius client root certificate of P2SVpnServerConfiguration." + }, + "vpnClientIpsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "VpnClientIpsecPolicies for P2SVpnServerConfiguration." + }, + "radiusServerAddress": { + "type": "string", + "description": "The radius server address property of the P2SVpnServerConfiguration resource for point to site client connection." + }, + "radiusServerSecret": { + "type": "string", + "description": "The radius secret property of the P2SVpnServerConfiguration resource for for point to site client connection." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the P2SVpnServerConfiguration resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + }, + "p2SVpnGateways": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "etag": { + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "description": "Parameters for P2SVpnServerConfiguration" + }, + "P2SVpnServerConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SVpnServerConfigurationProperties" + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "P2SVpnServerConfiguration Resource." + }, + "ListP2SVpnServerConfigurationsResult": { + "description": "Result of the request to list all P2SVpnServerConfigurations associated to a VirtualWan. It contains a list of P2SVpnServerConfigurations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/P2SVpnServerConfiguration" + }, + "description": "List of P2SVpnServerConfigurations." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnClientConnectionHealth": { + "properties": { + "totalIngressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "Total of the Ingress Bytes Transferred in this P2S Vpn connection" + }, + "totalEgressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "Total of the Egress Bytes Transferred in this connection" + }, + "vpnClientConnectionsCount": { + "type": "integer", + "format": "int32", + "description": "The total of p2s vpn clients connected at this time to this P2SVpnGateway." + }, + "allocatedIpAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of allocated ip addresses to the connected p2s vpn clients." + } + }, + "description": "VpnClientConnectionHealth properties" + }, + "P2SVpnGatewayProperties": { + "properties": { + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualHub to which the gateway belongs" + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "$ref": "#/definitions/ProvisioningState" + }, + "vpnGatewayScaleUnit": { + "type": "integer", + "format": "int32", + "description": "The scale unit for this p2s vpn gateway." + }, + "p2SVpnServerConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The P2SVpnServerConfiguration to which the p2sVpnGateway is attached to." + }, + "vpnClientAddressPool": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference of the address space resource which represents Address space for P2S VpnClient." + }, + "vpnClientConnectionHealth": { + "readOnly": true, + "$ref": "#/definitions/VpnClientConnectionHealth", + "description": "All P2S vpnclients' connection health status." + } + }, + "description": "Parameters for P2SVpnGateway" + }, + "P2SVpnGateway": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SVpnGatewayProperties" + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "Gets a unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "P2SVpnGateway Resource." + }, + "ListP2SVpnGatewaysResult": { + "description": "Result of the request to list P2SVpnGateways. It contains a list of P2SVpnGateways and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "List of P2SVpnGateways." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "P2SVpnProfileParameters": { + "properties": { + "authenticationMethod": { + "type": "string", + "description": "VPN client Authentication Method. Possible values are: 'EAPTLS' and 'EAPMSCHAPv2'.", + "enum": [ + "EAPTLS", + "EAPMSCHAPv2" + ], + "x-ms-enum": { + "name": "AuthenticationMethod", + "modelAsString": true + } + } + }, + "description": "Vpn Client Parameters for package generation" + }, + "VpnProfileResponse": { + "properties": { + "profileUrl": { + "type": "string", + "description": "URL to the VPN profile" + } + }, + "description": "Vpn Profile Response for package generation" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/vmssNetworkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/vmssNetworkInterface.json new file mode 100644 index 000000000000..b7d61ab82bb4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/vmssNetworkInterface.json @@ -0,0 +1,389 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2017-03-30" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetVMNetworkInterfaces", + "description": "Gets information about all network interfaces in a virtual machine in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "2017-03-30" + ], + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + }, + "description": "Client API version." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set vm network interfaces": { "$ref": "./examples/VmssVmNetworkInterfaceList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetNetworkInterfaces", + "description": "Gets all network interfaces in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "2017-03-30" + ], + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + }, + "description": "Client API version." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set network interfaces": { "$ref": "./examples/VmssNetworkInterfaceList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetVirtualMachineScaleSetNetworkInterface", + "description": "Get the specified network interface in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "2017-03-30" + ], + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + }, + "description": "Client API version." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + } + } + }, + "x-ms-examples": { + "Get virtual machine scale set network interface": { "$ref": "./examples/VmssNetworkInterfaceGet.json" } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetIpConfigurations", + "description": "Get the specified network interface ip configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "2017-03-30" + ], + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + }, + "description": "Client API version." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the list of resulting NetworkInterfaceIPConfigurations resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfigurationListResult" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set network interface ip configurations": { "$ref": "./examples/VmssNetworkInterfaceIpConfigList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetVirtualMachineScaleSetIpConfiguration", + "description": "Get the specified network interface ip configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ip configuration." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "2017-03-30" + ], + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + }, + "description": "Client API version." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterfaceIPConfiguration resource.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + } + } + }, + "x-ms-examples": { + "Get virtual machine scale set network interface": { "$ref": "./examples/VmssNetworkInterfaceIpConfigGet.json" } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/vmssPublicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/vmssPublicIpAddress.json new file mode 100644 index 000000000000..d4ce2eb2ddd4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2018-12-01/vmssPublicIpAddress.json @@ -0,0 +1,250 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2017-03-30" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/publicipaddresses": { + "get": { + "operationId": "PublicIPAddresses_ListVirtualMachineScaleSetPublicIPAddresses", + "description": "Gets information about all public IP addresses on a virtual machine scale set level.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "2017-03-30" + ], + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + }, + "description": "Client API version." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPInterface resources.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddressListResult" + } + } + }, + "x-ms-examples": { + "ListVMSSPublicIP": { "$ref": "./examples/VmssPublicIpListAll.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses" : { + "get": { + "operationId": "PublicIPAddresses_ListVirtualMachineScaleSetVMPublicIPAddresses", + "description": "Gets information about all public IP addresses in a virtual machine IP configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The network interface name." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The IP configuration name." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "2017-03-30" + ], + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + }, + "description": "Client API version." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddressListResult" + } + } + }, + "x-ms-examples": { + "ListVMSSVMPublicIP": { "$ref": "./examples/VmssVmPublicIpList.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses/{publicIpAddressName}": { + "get": { + "operationId": "PublicIPAddresses_GetVirtualMachineScaleSetPublicIPAddress", + "description": "Get the specified public IP address in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IP configuration." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP Address." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "2017-03-30" + ], + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + }, + "description": "Client API version." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "x-ms-examples": { + "GetVMSSPublicIP": { "$ref": "./examples/VmssPublicIpGet.json" } + }, + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress" + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/readme.md b/specification/network/resource-manager/readme.md index e309fcc370d0..aaf114223de5 100644 --- a/specification/network/resource-manager/readme.md +++ b/specification/network/resource-manager/readme.md @@ -28,15 +28,56 @@ These are the global settings for the Network API. title: NetworkManagementClient description: Network Client openapi-type: arm -tag: package-2018-10 +tag: package-2018-12 ``` +### Tag: package-2018-12 + +These settings apply only when `--tag=package-2018-12` is specified on the command line. + +```yaml $(tag) == 'package-2018-12' +input-file: + - Microsoft.Network/stable/2018-12-01/applicationGateway.json + - Microsoft.Network/stable/2018-12-01/applicationSecurityGroup.json + - Microsoft.Network/stable/2018-12-01/availableDelegations.json + - Microsoft.Network/stable/2018-12-01/azureFirewall.json + - Microsoft.Network/stable/2018-12-01/azureFirewallFqdnTag.json + - Microsoft.Network/stable/2018-12-01/checkDnsAvailability.json + - Microsoft.Network/stable/2018-12-01/ddosProtectionPlan.json + - Microsoft.Network/stable/2018-12-01/endpointService.json + - Microsoft.Network/stable/2018-12-01/expressRouteCircuit.json + - Microsoft.Network/stable/2018-12-01/expressRouteCrossConnection.json + - Microsoft.Network/stable/2018-12-01/expressRouteGateway.json + - Microsoft.Network/stable/2018-12-01/expressRoutePort.json + - Microsoft.Network/stable/2018-12-01/interfaceEndpoint.json + - Microsoft.Network/stable/2018-12-01/loadBalancer.json + - Microsoft.Network/stable/2018-12-01/network.json + - Microsoft.Network/stable/2018-12-01/networkInterface.json + - Microsoft.Network/stable/2018-12-01/networkProfile.json + - Microsoft.Network/stable/2018-12-01/networkSecurityGroup.json + - Microsoft.Network/stable/2018-12-01/networkWatcher.json + - Microsoft.Network/stable/2018-12-01/operation.json + - Microsoft.Network/stable/2018-12-01/publicIpAddress.json + - Microsoft.Network/stable/2018-12-01/publicIpPrefix.json + - Microsoft.Network/stable/2018-12-01/routeFilter.json + - Microsoft.Network/stable/2018-12-01/routeTable.json + - Microsoft.Network/stable/2018-12-01/serviceCommunity.json + - Microsoft.Network/stable/2018-12-01/serviceEndpointPolicy.json + - Microsoft.Network/stable/2018-12-01/usage.json + - Microsoft.Network/stable/2018-12-01/virtualNetwork.json + - Microsoft.Network/stable/2018-12-01/virtualNetworkGateway.json + - Microsoft.Network/stable/2018-12-01/virtualNetworkTap.json + - Microsoft.Network/stable/2018-12-01/virtualWan.json + - Microsoft.Network/stable/2018-12-01/vmssNetworkInterface.json + - Microsoft.Network/stable/2018-12-01/vmssPublicIpAddress.json +``` + ### Tag: package-2018-10 These settings apply only when `--tag=package-2018-10` is specified on the command line. -```yaml $(tag) == 'package-2018-10' +``` yaml $(tag) == 'package-2018-10' input-file: - Microsoft.Network/stable/2018-10-01/applicationGateway.json - Microsoft.Network/stable/2018-10-01/applicationSecurityGroup.json @@ -858,20 +899,35 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-network ``` yaml $(java) && $(multiapi) batch: + - tag: package-2018-08 + - tag: package-2018-07 - tag: package-2018-06 - tag: package-2018-04 - tag: package-2017-10 ``` -### Tag: package-2018-04 and java +### Tag: package-2018-08 and java -These settings apply only when `--tag=package-2018-04 --java` is specified on the command line. +These settings apply only when `--tag=package-2018-08 --java` is specified on the command line. Please also specify `--azure-libraries-for-java-folder=`. -``` yaml $(tag) == 'package-2018-04' && $(java) && $(multiapi) +``` yaml $(tag) == 'package-2018-08' && $(java) && $(multiapi) java: - namespace: com.microsoft.azure.management.network.v2018_04_01 - output-folder: $(azure-libraries-for-java-folder)/network/resource-manager/v2018_04_01 + namespace: com.microsoft.azure.management.network.v2018_08_01 + output-folder: $(azure-libraries-for-java-folder)/network/resource-manager/v2018_08_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2018-07 and java + +These settings apply only when `--tag=package-2018-07 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2018-07' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.network.v2018_07_01 + output-folder: $(azure-libraries-for-java-folder)/network/resource-manager/v2018_07_01 regenerate-manager: true generate-interface: true ``` @@ -889,6 +945,19 @@ regenerate-manager: true generate-interface: true ``` +### Tag: package-2018-04 and java + +These settings apply only when `--tag=package-2018-04 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2018-04' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.network.v2018_04_01 + output-folder: $(azure-libraries-for-java-folder)/network/resource-manager/v2018_04_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2017-10 and java These settings apply only when `--tag=package-2017-10 --java` is specified on the command line. diff --git a/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/oms-get-cross-workspace-example.json b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/oms-get-cross-workspace-example.json index 2e7d2e5846c3..785cf83dc88b 100644 --- a/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/oms-get-cross-workspace-example.json +++ b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/oms-get-cross-workspace-example.json @@ -2,9 +2,9 @@ "title": "Cross Workspace Query", "description": "A cross workspace query that the type and count of each row per workspace.", "parameters": { + "workspaceId": "63613592-b6f7-4c3d-a390-22ba13102111", "query": "union * | where TimeGenerated > ago(1h) | summarize count() by Type, TenantId", - "workspaces": "draft-test,draft-test-2", - "workspaceId": "63613592-b6f7-4c3d-a390-22ba13102111" + "workspaces": "draft-test,draft-test-2" }, "responses": { "200": { diff --git a/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/oms-get-example.json b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/oms-get-example.json index d0410a61ee8c..2818b0bedbb0 100644 --- a/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/oms-get-example.json +++ b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/oms-get-example.json @@ -2,9 +2,9 @@ "title": "Simple Query", "description": "A simple query that returns query results.", "parameters": { + "workspaceId": "63613592-b6f7-4c3d-a390-22ba13102111", "query": "Usage | take 10", - "timespan": "PT12H", - "workspaceId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345" + "timespan": "PT12H" }, "responses": { "200": { diff --git a/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/oms-post-cross-workspace-example.json b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/oms-post-cross-workspace-example.json index 42693c0fbceb..930205a98196 100644 --- a/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/oms-post-cross-workspace-example.json +++ b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/oms-post-cross-workspace-example.json @@ -2,14 +2,14 @@ "title": "Cross Workspace Query", "description": "A cross workspace query that the type and count of each row per workspace.", "parameters": { + "workspaceId": "63613592-b6f7-4c3d-a390-22ba13102111", "body": { "query": "union * | where TimeGenerated > ago(1h) | summarize count() by Type, TenantId", "workspaces": [ "draft-test", "draft-test-2" ] - }, - "workspaceId": "63613592-b6f7-4c3d-a390-22ba13102111" + } }, "responses": { "200": { diff --git a/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/oms-post-example.json b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/oms-post-example.json index eb17e4f3cf72..002776cb4d86 100644 --- a/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/oms-post-example.json +++ b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/oms-post-example.json @@ -2,11 +2,11 @@ "title": "Simple Query", "description": "A simple query that returns query results.", "parameters": { + "workspaceId": "63613592-b6f7-4c3d-a390-22ba13102111", "body": { "query": "Usage | take 10", "timespan": "PT12H" - }, - "workspaceId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345" + } }, "responses": { "200": { diff --git a/specification/operationalinsights/data-plane/readme.go.md b/specification/operationalinsights/data-plane/readme.go.md index c683948ad931..a0f6346d5799 100644 --- a/specification/operationalinsights/data-plane/readme.go.md +++ b/specification/operationalinsights/data-plane/readme.go.md @@ -23,4 +23,8 @@ Please also specify `--go-sdk-folder=`. - -``` yaml $(tag) == 'package-2017-04-preview' && $(go) -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2017-04-30-preview/$(namespace) -``` - ### Tag: package-2017-12-01-preview and go These settings apply only when `--tag=package-2017-12-01-preview --go` is specified on the command line. diff --git a/specification/postgresql/resource-manager/readme.md b/specification/postgresql/resource-manager/readme.md index f65192cb23dc..3053b1935403 100644 --- a/specification/postgresql/resource-manager/readme.md +++ b/specification/postgresql/resource-manager/readme.md @@ -30,16 +30,6 @@ tag: package-2017-12-01 ``` -### Tag: package-2017-04-preview - -These settings apply only when `--tag=package-2017-04-preview` is specified on the command line. - -``` yaml $(tag) == 'package-2017-04-preview' -input-file: -- Microsoft.DBforPostgreSQL/preview/2017-04-30-preview/postgresql.json -``` - - ### Tag: package-2017-12-01-preview These settings apply only when `--tag=package-2017-12-01-preview` is specified on the command line. diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2018-06-01/reservations.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2018-06-01/reservations.json index e427f2010cc4..52a9b8f9407a 100644 --- a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2018-06-01/reservations.json +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2018-06-01/reservations.json @@ -1132,7 +1132,8 @@ "VirtualMachines", "SqlDatabases", "SuseLinux", - "CosmosDb" + "CosmosDb", + "RedHat" ], "x-ms-enum": { "name": "ReservedResourceType", diff --git a/specification/reservations/resource-manager/readme.go.md b/specification/reservations/resource-manager/readme.go.md index 777397b7e615..5083fae1d771 100644 --- a/specification/reservations/resource-manager/readme.go.md +++ b/specification/reservations/resource-manager/readme.go.md @@ -23,7 +23,7 @@ These settings apply only when `--tag=package-2018-06 --go` is specified on the Please also specify `--go-sdk-folder=`. ``` yaml $(tag)=='package-2018-06' && $(go) -output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2018-06-01/$(namespace) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2018-06-01/$(namespace) ``` ### Tag: package-2017-11 and go @@ -33,4 +33,4 @@ Please also specify `--go-sdk-folder=`. @@ -77,7 +77,7 @@ csharp: license-header: MICROSOFT_MIT_NO_VERSION namespace: Microsoft.Azure.Management.Security payload-flattening-threshold: 2 - output-folder: $(csharp-sdks-folder)/Security/Management.Security/Generated + output-folder: $(csharp-sdks-folder)/SecurityCenter/Management.SecurityCenter/Generated clear-output-folder: true ``` diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/6.2/examples/CreateService-4.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/6.2/examples/CreateService-4.json index d72ec8f3b457..246bb902dbca 100644 --- a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/6.2/examples/CreateService-4.json +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/6.2/examples/CreateService-4.json @@ -11,7 +11,7 @@ "ServiceTypeName": "StatefulBackendService", "InitializationData": [], "PartitionDescription": { - "PartitionScheme": "NamedParitionSchemeDescription", + "PartitionScheme": "NamedPartitionSchemeDescription", "Count" : 1, "Names" : ["0"] }, diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/6.2/servicefabric.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/6.2/servicefabric.json index 3f5849cc896e..888add445d02 100644 --- a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/6.2/servicefabric.json +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/6.2/servicefabric.json @@ -1319,7 +1319,7 @@ "/ApplicationTypes/{applicationTypeName}/$/GetServiceTypes/{serviceTypeName}": { "get": { "summary": "Gets the information about a specific service type that is supported by a provisioned application type in a Service Fabric cluster.", - "description": "Gets the information about a specific service type that is supported by a provisioned application type in a Service Fabric cluster. The provided application type must exist. Otherwise, a 404 status is returned. A 204 response is returned if the specificed service type is not found in the cluster.", + "description": "Gets the information about a specific service type that is supported by a provisioned application type in a Service Fabric cluster. The provided application type must exist. Otherwise, a 404 status is returned. A 204 response is returned if the specified service type is not found in the cluster.", "operationId": "GetServiceTypeInfoByName", "parameters": [ { @@ -5583,7 +5583,7 @@ ], "responses": { "201": { - "description": "A sucessful operation returns 201 status code and creates a new backup policy." + "description": "A successful operation returns 201 status code and creates a new backup policy." }, "default": { "description": "The detailed error response.", @@ -5795,7 +5795,7 @@ ], "responses": { "200": { - "description": "A sucessful operation resturns 200 status code and updates the backup policy description." + "description": "A successful operation returns 200 status code and updates the backup policy description." }, "default": { "description": "The detailed error response.", @@ -7159,7 +7159,7 @@ } }, "409": { - "description": "A 409 response means that one of the property batch operations failed, and contains more information about the failure. None of the operations were commited.", + "description": "A 409 response means that one of the property batch operations failed, and contains more information about the failure. None of the operations were committed.", "schema": { "$ref": "#/definitions/FailedPropertyBatchInfo" } @@ -13193,7 +13193,7 @@ }, "MaxPercentUnhealthyServices": { "type": "integer", - "description": "The maximum maximum allowed percentage of unhealthy services. Allowed values are Byte values from zero to 100.\n\nThe percentage represents the maximum tolerated percentage of services that can be unhealthy before the application is considered in error.\nIf the percentage is respected but there is at least one unhealthy service, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy services of the specific service type over the total number of services of the specific service type.\nThe computation rounds up to tolerate one failure on small numbers of services. Default percentage is zero.", + "description": "The maximum allowed percentage of unhealthy services. Allowed values are Byte values from zero to 100.\n\nThe percentage represents the maximum tolerated percentage of services that can be unhealthy before the application is considered in error.\nIf the percentage is respected but there is at least one unhealthy service, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy services of the specific service type over the total number of services of the specific service type.\nThe computation rounds up to tolerate one failure on small numbers of services. Default percentage is zero.", "default": 0 } } @@ -23507,7 +23507,7 @@ "values": [ { "value": "default", - "description": "This filter value will match all of the nodes excepts the ones with with status as Unknown or Removed." + "description": "This filter value will match all of the nodes excepts the ones with status as Unknown or Removed." }, { "value": "all", diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/6.3/examples/CreateService-4.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/6.3/examples/CreateService-4.json index d72ec8f3b457..246bb902dbca 100644 --- a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/6.3/examples/CreateService-4.json +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/6.3/examples/CreateService-4.json @@ -11,7 +11,7 @@ "ServiceTypeName": "StatefulBackendService", "InitializationData": [], "PartitionDescription": { - "PartitionScheme": "NamedParitionSchemeDescription", + "PartitionScheme": "NamedPartitionSchemeDescription", "Count" : 1, "Names" : ["0"] }, diff --git a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/6.3/servicefabric.json b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/6.3/servicefabric.json index 1bc3931d0c02..5da051674d5e 100644 --- a/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/6.3/servicefabric.json +++ b/specification/servicefabric/data-plane/Microsoft.ServiceFabric/stable/6.3/servicefabric.json @@ -1338,7 +1338,7 @@ "/ApplicationTypes/{applicationTypeName}/$/GetServiceTypes/{serviceTypeName}": { "get": { "summary": "Gets the information about a specific service type that is supported by a provisioned application type in a Service Fabric cluster.", - "description": "Gets the information about a specific service type that is supported by a provisioned application type in a Service Fabric cluster. The provided application type must exist. Otherwise, a 404 status is returned. A 204 response is returned if the specificed service type is not found in the cluster.", + "description": "Gets the information about a specific service type that is supported by a provisioned application type in a Service Fabric cluster. The provided application type must exist. Otherwise, a 404 status is returned. A 204 response is returned if the specified service type is not found in the cluster.", "operationId": "GetServiceTypeInfoByName", "parameters": [ { @@ -5608,7 +5608,7 @@ ], "responses": { "201": { - "description": "A sucessful operation returns 201 status code and creates a new backup policy." + "description": "A successful operation returns 201 status code and creates a new backup policy." }, "default": { "description": "The detailed error response.", @@ -5820,7 +5820,7 @@ ], "responses": { "200": { - "description": "A sucessful operation resturns 200 status code and updates the backup policy description." + "description": "A sucsessful operation returns 200 status code and updates the backup policy description." }, "default": { "description": "The detailed error response.", @@ -7184,7 +7184,7 @@ } }, "409": { - "description": "A 409 response means that one of the property batch operations failed, and contains more information about the failure. None of the operations were commited.", + "description": "A 409 response means that one of the property batch operations failed, and contains more information about the failure. None of the operations were committed.", "schema": { "$ref": "#/definitions/FailedPropertyBatchInfo" } @@ -8064,7 +8064,7 @@ "$ref": "./examples/Resource/GetReplicas.json" } }, - "summary": "Gets replicas of a given service in an applciation resource.", + "summary": "Gets replicas of a given service in an application resource.", "description": "Gets the information about all replicas of a given service of an application. The information includes the runtime properties of the replica instance.", "parameters": [ { @@ -13600,7 +13600,7 @@ }, "MaxPercentUnhealthyServices": { "type": "integer", - "description": "The maximum maximum allowed percentage of unhealthy services. Allowed values are Byte values from zero to 100.\n\nThe percentage represents the maximum tolerated percentage of services that can be unhealthy before the application is considered in error.\nIf the percentage is respected but there is at least one unhealthy service, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy services of the specific service type over the total number of services of the specific service type.\nThe computation rounds up to tolerate one failure on small numbers of services. Default percentage is zero.", + "description": "The maximum allowed percentage of unhealthy services. Allowed values are Byte values from zero to 100.\n\nThe percentage represents the maximum tolerated percentage of services that can be unhealthy before the application is considered in error.\nIf the percentage is respected but there is at least one unhealthy service, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy services of the specific service type over the total number of services of the specific service type.\nThe computation rounds up to tolerate one failure on small numbers of services. Default percentage is zero.", "default": 0 } } @@ -24711,7 +24711,7 @@ "values": [ { "value": "default", - "description": "This filter value will match all of the nodes excepts the ones with with status as Unknown or Removed." + "description": "This filter value will match all of the nodes excepts the ones with status as Unknown or Removed." }, { "value": "all", diff --git a/specification/servicefabricmesh/resource-manager/readme.md b/specification/servicefabricmesh/resource-manager/readme.md index 93f5b287119a..83efdb69f4b5 100644 --- a/specification/servicefabricmesh/resource-manager/readme.md +++ b/specification/servicefabricmesh/resource-manager/readme.md @@ -32,7 +32,7 @@ tag: package-2018-09-01-preview directive: - suppress: RequiredPropertiesMissingInResourceModel - reason: Service is a proxy resource that is managed (created and updated) by including it in the application resource. The name is required by RP to manage those resources. The name is readOnly in the default resource schema so it is not serialized on the wire by AutoRest generated libraries. This is a bug on our RP and should be fixed. The inlined objects should be part of the application properties and not a seperate proxy resource. + reason: Service is a proxy resource that is managed (created and updated) by including it in the application resource. The name is required by RP to manage those resources. The name is readOnly in the default resource schema so it is not serialized on the wire by AutoRest generated libraries. This is a bug on our RP and should be fixed. The inlined objects should be part of the application properties and not a separate proxy resource. - suppress: EnumInsteadOfBoolean reason: The `readOnly` boolean schema is part of Azure Resource Manager common schema. - suppress: TrackedResourcePatchOperation diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/blobAuditing.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/blobAuditing.json index da0b92c5a6bb..21da90edee76 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/blobAuditing.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/blobAuditing.json @@ -164,7 +164,7 @@ "type": "integer" }, "auditActionsAndGroups": { - "description": "Specifies the Actions-Groups and Actions to audit.\r\n\r\nThe recommended set of action groups to use is the following combination - this will audit all the queries and stored procedures executed against the database, as well as successful and failed logins:\r\n\r\nBATCH_COMPLETED_GROUP,\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,\r\nFAILED_DATABASE_AUTHENTICATION_GROUP.\r\n\r\nThis above combination is also the set that is configured by default when enabling auditing from the Azure portal.\r\n\r\nThe supported action groups to audit are (note: choose only specific groups that cover your auditing needs. Using unnecessary groups could lead to very large quantities of audit records):\r\n\r\nAPPLICATION_ROLE_CHANGE_PASSWORD_GROUP\r\nBACKUP_RESTORE_GROUP\r\nDATABASE_LOGOUT_GROUP\r\nDATABASE_OBJECT_CHANGE_GROUP\r\nDATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_OBJECT_PERMISSION_CHANGE_GROUP\r\nDATABASE_OPERATION_GROUP\r\nDATABASE_PERMISSION_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_IMPERSONATION_GROUP\r\nDATABASE_ROLE_MEMBER_CHANGE_GROUP\r\nFAILED_DATABASE_AUTHENTICATION_GROUP\r\nSCHEMA_OBJECT_ACCESS_GROUP\r\nSCHEMA_OBJECT_CHANGE_GROUP\r\nSCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nSCHEMA_OBJECT_PERMISSION_CHANGE_GROUP\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP\r\nUSER_CHANGE_PASSWORD_GROUP\r\nBATCH_STARTED_GROUP\r\nBATCH_COMPLETED_GROUP\r\n\r\nThese are groups that cover all sql statements and stored procedures executed against the database, and should not be used in combination with other groups as this will result in duplicate audit logs.\r\n\r\nFor more information, see [Database-Level Audit Action Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups).\r\n\r\nFor Database auditing policy, specific Actions can also be specified (note that Actions cannot be specified for Server auditing policy). The supported actions to audit are:\r\nSELECT\r\nUPDATE\r\nINSERT\r\nDELETE\r\nEXECUTE\r\nRECEIVE\r\nREFERENCES\r\n\r\nThe general form for defining an action to be audited is:\r\n ON BY \r\n\r\nNote that in the above format can refer to an object like a table, view, or stored procedure, or an entire database or schema. For the latter cases, the forms DATABASE:: and SCHEMA:: are used, respectively.\r\n\r\nFor example:\r\nSELECT on dbo.myTable by public\r\nSELECT on DATABASE::myDatabase by public\r\nSELECT on SCHEMA::mySchema by public\r\n\r\nFor more information, see [Database-Level Audit Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions)", + "description": "Specifies the Actions-Groups and Actions to audit.\r\n\r\nThe recommended set of action groups to use is the following combination - this will audit all the queries and stored procedures executed against the database, as well as successful and failed logins:\r\n\r\nBATCH_COMPLETED_GROUP,\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,\r\nFAILED_DATABASE_AUTHENTICATION_GROUP.\r\n\r\nThis above combination is also the set that is configured by default when enabling auditing from the Azure portal.\r\n\r\nThe supported action groups to audit are (note: choose only specific groups that cover your auditing needs. Using unnecessary groups could lead to very large quantities of audit records):\r\n\r\nAPPLICATION_ROLE_CHANGE_PASSWORD_GROUP\r\nBACKUP_RESTORE_GROUP\r\nDATABASE_LOGOUT_GROUP\r\nDATABASE_OBJECT_CHANGE_GROUP\r\nDATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_OBJECT_PERMISSION_CHANGE_GROUP\r\nDATABASE_OPERATION_GROUP\r\nDATABASE_PERMISSION_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_IMPERSONATION_GROUP\r\nDATABASE_ROLE_MEMBER_CHANGE_GROUP\r\nFAILED_DATABASE_AUTHENTICATION_GROUP\r\nSCHEMA_OBJECT_ACCESS_GROUP\r\nSCHEMA_OBJECT_CHANGE_GROUP\r\nSCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nSCHEMA_OBJECT_PERMISSION_CHANGE_GROUP\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP\r\nUSER_CHANGE_PASSWORD_GROUP\r\nBATCH_STARTED_GROUP\r\nBATCH_COMPLETED_GROUP\r\n\r\nThese are groups that cover all sql statements and stored procedures executed against the database, and should not be used in combination with other groups as this will result in duplicate audit logs.\r\n\r\nFor more information, see [Database-Level Audit Action Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups).\r\n\r\nFor Database auditing policy, specific Actions can also be specified (note that Actions cannot be specified for Server auditing policy). The supported actions to audit are:\r\nSELECT\r\nUPDATE\r\nINSERT\r\nDELETE\r\nEXECUTE\r\nRECEIVE\r\nREFERENCES\r\n\r\nThe general form for defining an action to be audited is:\r\n{action} ON {object} BY {principal}\r\n\r\nNote that in the above format can refer to an object like a table, view, or stored procedure, or an entire database or schema. For the latter cases, the forms DATABASE::{db_name} and SCHEMA::{schema_name} are used, respectively.\r\n\r\nFor example:\r\nSELECT on dbo.myTable by public\r\nSELECT on DATABASE::myDatabase by public\r\nSELECT on SCHEMA::mySchema by public\r\n\r\nFor more information, see [Database-Level Audit Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions)", "type": "array", "items": { "type": "string" @@ -180,7 +180,7 @@ "type": "boolean" }, "isAzureMonitorTargetEnabled": { - "description": "Specifies whether audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'State' as 'Enabled' and 'IsAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'SQLSecurityAuditEvents' diagnostic logs category on the database should be also created.\r\nNote that for server level audit you should use the 'master' database as .\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.Sql/servers//databases//providers/microsoft.insights/diagnosticSettings/?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", + "description": "Specifies whether audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'State' as 'Enabled' and 'IsAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'SQLSecurityAuditEvents' diagnostic logs category on the database should be also created.\r\nNote that for server level audit you should use the 'master' database as {databaseName}.\r\n\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", "type": "boolean" } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceCreateMax.json index cc20751023a9..8d561e0a5abe 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceCreateMax.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/ManagedInstanceCreateMax.json @@ -22,6 +22,7 @@ "vCores": 8, "storageSizeInGB": 1024, "licenseType": "Full", + "collation": "SQL_Latin1_General_CP1_CI_AS", "dnsZonePartner": "/subscriptions/20D7082A-0FC7-4468-82BD-542694D5042B/resourceGroups/testrg/providers/Microsoft.Sql/managedInstances/testinstance" } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json index 8e3171ce8e68..6af4102fcf51 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json @@ -355,7 +355,10 @@ "collation": { "description": "Collation of the managed instance.", "type": "string", - "readOnly": true + "x-ms-mutability": [ + "read", + "create" + ] }, "dnsZone": { "description": "The Dns Zone that the managed instance is in.", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/ManagedBackupShortTermRetention.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/ManagedBackupShortTermRetention.json new file mode 100644 index 000000000000..4c45ce963829 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/ManagedBackupShortTermRetention.json @@ -0,0 +1,431 @@ +{ + "swagger": "2.0", + "info": { + "version": "2017-03-01-preview", + "title": "SqlManagementClient", + "description": "The Azure SQL Database management API provides a RESTful set of web APIs that interact with Azure SQL Database services to manage your databases. The API enables users to create, retrieve, update, and delete databases, servers, and other entities." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/backupShortTermRetentionPolicies/{policyName}": { + "get": { + "tags": [ + "ManagedBackupShortTermRetentionPolicies" + ], + "description": "Gets a managed database's short term retention policy.", + "operationId": "ManagedBackupShortTermRetentionPolicies_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "policyName", + "in": "path", + "description": "The policy name.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "ManagedShortTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the policy.", + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidBackupRetentionDays - The retention days of {0} is not a valid configuration. Valid backup retention must be in 7-day increments (7, 14, 21, etc.)\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get the short term retention policy for the database.": { + "$ref": "./examples/GetManagedShortTermRetentionPolicy.json" + } + } + }, + "put": { + "tags": [ + "ManagedBackupShortTermRetentionPolicies" + ], + "description": "Updates a managed database's short term retention policy.", + "operationId": "ManagedBackupShortTermRetentionPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "policyName", + "in": "path", + "description": "The policy name. Should always be \"default\".", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "ManagedShortTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The short term retention policy info.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the policy.", + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidBackupRetentionDays - The retention days of {0} is not a valid configuration. Valid backup retention must be in 7-day increments (7, 14, 21, etc.)\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update the short term retention policy for the database.": { + "$ref": "./examples/UpdateManagedShortTermRetentionPolicy.json" + } + } + }, + "patch": { + "tags": [ + "ManagedBackupShortTermRetentionPolicies" + ], + "description": "Updates a managed database's short term retention policy.", + "operationId": "ManagedBackupShortTermRetentionPolicies_Update", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "policyName", + "in": "path", + "description": "The policy name. Should always be \"default\".", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "ManagedShortTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The short term retention policy info.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the policy.", + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidBackupRetentionDays - The retention days of {0} is not a valid configuration. Valid backup retention must be in 7-day increments (7, 14, 21, etc.)\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update the short term retention policy for the database.": { + "$ref": "./examples/UpdateManagedShortTermRetentionPolicy.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/backupShortTermRetentionPolicies": { + "get": { + "tags": [ + "ManagedBackupShortTermRetentionPolicies" + ], + "description": "Gets a managed database's short term retention policy list.", + "operationId": "ManagedBackupShortTermRetentionPolicies_ListByDatabase", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the policy.", + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidBackupRetentionDays - The retention days of {0} is not a valid configuration. Valid backup retention must be in 7-day increments (7, 14, 21, etc.)\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get the short term retention policy list for the database.": { + "$ref": "./examples/GetListManagedShortTermRetentionPolicy.json" + } + } + } + } + }, + "definitions": { + "ManagedBackupShortTermRetentionPolicyProperties": { + "description": "Properties of a short term retention policy", + "type": "object", + "properties": { + "retentionDays": { + "format": "int32", + "description": "The backup retention period in days. This is how many days Point-in-Time Restore will be supported.", + "type": "integer" + } + } + }, + "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": {} + }, + "ManagedBackupShortTermRetentionPolicy": { + "description": "A short term retention policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ManagedBackupShortTermRetentionPolicyListResult": { + "description": "A list of short term retention policies.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription ID that identifies an Azure subscription.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version to use for the request.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "BlobAuditingPolicyNameParameter": { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineInstanceNameParameter": { + "name": "sqlVirtualMachineInstanceName", + "in": "path", + "description": "The name of the SqlVirtualMachineInstance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineContainerNameParameter": { + "name": "sqlVirtualMachineContainerName", + "in": "path", + "description": "The name of the SqlVirtualMachineContainer.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VirtualClusterNameParameter": { + "name": "virtualClusterName", + "in": "path", + "description": "The name of the virtual cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetenion.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetenion.json new file mode 100644 index 000000000000..0c60a68988ee --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/ManagedRestorableDroppedDatabaseBackupShortTermRetenion.json @@ -0,0 +1,443 @@ +{ + "swagger": "2.0", + "info": { + "version": "2017-03-01-preview", + "title": "SqlManagementClient", + "description": "The Azure SQL Database management API provides a RESTful set of web APIs that interact with Azure SQL Database services to manage your databases. The API enables users to create, retrieve, update, and delete databases, servers, and other entities." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/restorableDroppedDatabases/{restorableDroppedDatabaseId}/backupShortTermRetentionPolicies/{policyName}": { + "get": { + "tags": [ + "ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies" + ], + "description": "Gets a dropped database's short term retention policy.", + "operationId": "ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "restorableDroppedDatabaseId", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "policyName", + "in": "path", + "description": "The policy name.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "ManagedShortTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the policies.", + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get the short term retention policy for the database.": { + "$ref": "./examples/GetManagedShortTermRetentionPolicyRestorableDropped.json" + } + } + }, + "put": { + "tags": [ + "ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies" + ], + "description": "Sets a database's long term retention policy.", + "operationId": "ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "restorableDroppedDatabaseId", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "policyName", + "in": "path", + "description": "The policy name. Should always be \"default\".", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "ManagedShortTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The long term retention policy info.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the policy.", + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\n\n * 400 InvalidBackupRetentionDays - The retention days of {0} is not a valid configuration. Valid backup retention must be in 7-day increments (7, 14, 21, etc.)\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update the short term retention policy for the restorable dropped database.": { + "$ref": "./examples/UpdateManagedShortTermRetentionPolicyRestorableDropped.json" + } + } + }, + "patch": { + "tags": [ + "ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies" + ], + "description": "Sets a database's long term retention policy.", + "operationId": "ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies_Update", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "restorableDroppedDatabaseId", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "policyName", + "in": "path", + "description": "The policy name. Should always be \"default\".", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "ManagedShortTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The long term retention policy info.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the policy.", + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\n\n * 400 InvalidBackupRetentionDays - The retention days of {0} is not a valid configuration. Valid backup retention must be in 7-day increments (7, 14, 21, etc.)\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update the short term retention policy for the restorable dropped database.": { + "$ref": "./examples/UpdateManagedShortTermRetentionPolicyRestorableDropped.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/restorableDroppedDatabases/{restorableDroppedDatabaseId}/backupShortTermRetentionPolicies": { + "get": { + "tags": [ + "ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies" + ], + "description": "Gets a dropped database's short term retention policy list.", + "operationId": "ManagedRestorableDroppedDatabaseBackupShortTermRetentionPolicies_ListByRestorableDroppedDatabase", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "restorableDroppedDatabaseId", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the policies.", + "schema": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidRestorableDroppedDatabaseDeletionDate - The restorable dropped database deletion date given is invalid\n\n * 400 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped database identifier\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get the short term retention policy list for the database.": { + "$ref": "./examples/GetListManagedShortTermRetentionPolicyRestorableDropped.json" + } + } + } + } + }, + "definitions": { + "ManagedBackupShortTermRetentionPolicyProperties": { + "description": "Properties of a short term retention policy", + "type": "object", + "properties": { + "retentionDays": { + "format": "int32", + "description": "The backup retention period in days. This is how many days Point-in-Time Restore will be supported.", + "type": "integer" + } + } + }, + "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": {} + }, + "ManagedBackupShortTermRetentionPolicy": { + "description": "A short term retention policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ManagedBackupShortTermRetentionPolicyListResult": { + "description": "A list of short term retention policies.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedBackupShortTermRetentionPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription ID that identifies an Azure subscription.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API version to use for the request.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ManagedInstanceNameParameter": { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "BlobAuditingPolicyNameParameter": { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineInstanceNameParameter": { + "name": "sqlVirtualMachineInstanceName", + "in": "path", + "description": "The name of the SqlVirtualMachineInstance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineContainerNameParameter": { + "name": "sqlVirtualMachineContainerName", + "in": "path", + "description": "The name of the SqlVirtualMachineContainer.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VirtualClusterNameParameter": { + "name": "virtualClusterName", + "in": "path", + "description": "The name of the virtual cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/blobAuditing.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/blobAuditing.json index 11bea1ff64a2..8db4117553d7 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/blobAuditing.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/blobAuditing.json @@ -473,7 +473,7 @@ "type": "integer" }, "auditActionsAndGroups": { - "description": "Specifies the Actions-Groups and Actions to audit.\r\n\r\nThe recommended set of action groups to use is the following combination - this will audit all the queries and stored procedures executed against the database, as well as successful and failed logins:\r\n\r\nBATCH_COMPLETED_GROUP,\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,\r\nFAILED_DATABASE_AUTHENTICATION_GROUP.\r\n\r\nThis above combination is also the set that is configured by default when enabling auditing from the Azure portal.\r\n\r\nThe supported action groups to audit are (note: choose only specific groups that cover your auditing needs. Using unnecessary groups could lead to very large quantities of audit records):\r\n\r\nAPPLICATION_ROLE_CHANGE_PASSWORD_GROUP\r\nBACKUP_RESTORE_GROUP\r\nDATABASE_LOGOUT_GROUP\r\nDATABASE_OBJECT_CHANGE_GROUP\r\nDATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_OBJECT_PERMISSION_CHANGE_GROUP\r\nDATABASE_OPERATION_GROUP\r\nDATABASE_PERMISSION_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_IMPERSONATION_GROUP\r\nDATABASE_ROLE_MEMBER_CHANGE_GROUP\r\nFAILED_DATABASE_AUTHENTICATION_GROUP\r\nSCHEMA_OBJECT_ACCESS_GROUP\r\nSCHEMA_OBJECT_CHANGE_GROUP\r\nSCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nSCHEMA_OBJECT_PERMISSION_CHANGE_GROUP\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP\r\nUSER_CHANGE_PASSWORD_GROUP\r\nBATCH_STARTED_GROUP\r\nBATCH_COMPLETED_GROUP\r\n\r\nThese are groups that cover all sql statements and stored procedures executed against the database, and should not be used in combination with other groups as this will result in duplicate audit logs.\r\n\r\nFor more information, see [Database-Level Audit Action Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups).\r\n\r\nFor Database auditing policy, specific Actions can also be specified (note that Actions cannot be specified for Server auditing policy). The supported actions to audit are:\r\nSELECT\r\nUPDATE\r\nINSERT\r\nDELETE\r\nEXECUTE\r\nRECEIVE\r\nREFERENCES\r\n\r\nThe general form for defining an action to be audited is:\r\n ON BY \r\n\r\nNote that in the above format can refer to an object like a table, view, or stored procedure, or an entire database or schema. For the latter cases, the forms DATABASE:: and SCHEMA:: are used, respectively.\r\n\r\nFor example:\r\nSELECT on dbo.myTable by public\r\nSELECT on DATABASE::myDatabase by public\r\nSELECT on SCHEMA::mySchema by public\r\n\r\nFor more information, see [Database-Level Audit Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions)", + "description": "Specifies the Actions-Groups and Actions to audit.\r\n\r\nThe recommended set of action groups to use is the following combination - this will audit all the queries and stored procedures executed against the database, as well as successful and failed logins:\r\n\r\nBATCH_COMPLETED_GROUP,\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,\r\nFAILED_DATABASE_AUTHENTICATION_GROUP.\r\n\r\nThis above combination is also the set that is configured by default when enabling auditing from the Azure portal.\r\n\r\nThe supported action groups to audit are (note: choose only specific groups that cover your auditing needs. Using unnecessary groups could lead to very large quantities of audit records):\r\n\r\nAPPLICATION_ROLE_CHANGE_PASSWORD_GROUP\r\nBACKUP_RESTORE_GROUP\r\nDATABASE_LOGOUT_GROUP\r\nDATABASE_OBJECT_CHANGE_GROUP\r\nDATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_OBJECT_PERMISSION_CHANGE_GROUP\r\nDATABASE_OPERATION_GROUP\r\nDATABASE_PERMISSION_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_IMPERSONATION_GROUP\r\nDATABASE_ROLE_MEMBER_CHANGE_GROUP\r\nFAILED_DATABASE_AUTHENTICATION_GROUP\r\nSCHEMA_OBJECT_ACCESS_GROUP\r\nSCHEMA_OBJECT_CHANGE_GROUP\r\nSCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nSCHEMA_OBJECT_PERMISSION_CHANGE_GROUP\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP\r\nUSER_CHANGE_PASSWORD_GROUP\r\nBATCH_STARTED_GROUP\r\nBATCH_COMPLETED_GROUP\r\n\r\nThese are groups that cover all sql statements and stored procedures executed against the database, and should not be used in combination with other groups as this will result in duplicate audit logs.\r\n\r\nFor more information, see [Database-Level Audit Action Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups).\r\n\r\nFor Database auditing policy, specific Actions can also be specified (note that Actions cannot be specified for Server auditing policy). The supported actions to audit are:\r\nSELECT\r\nUPDATE\r\nINSERT\r\nDELETE\r\nEXECUTE\r\nRECEIVE\r\nREFERENCES\r\n\r\nThe general form for defining an action to be audited is:\r\n{action} ON {object} BY {principal}\r\n\r\nNote that in the above format can refer to an object like a table, view, or stored procedure, or an entire database or schema. For the latter cases, the forms DATABASE::{db_name} and SCHEMA::{schema_name} are used, respectively.\r\n\r\nFor example:\r\nSELECT on dbo.myTable by public\r\nSELECT on DATABASE::myDatabase by public\r\nSELECT on SCHEMA::mySchema by public\r\n\r\nFor more information, see [Database-Level Audit Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions)", "type": "array", "items": { "type": "string" @@ -489,7 +489,7 @@ "type": "boolean" }, "isAzureMonitorTargetEnabled": { - "description": "Specifies whether audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'State' as 'Enabled' and 'IsAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'SQLSecurityAuditEvents' diagnostic logs category on the database should be also created.\r\nNote that for server level audit you should use the 'master' database as .\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.Sql/servers//databases//providers/microsoft.insights/diagnosticSettings/?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", + "description": "Specifies whether audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'State' as 'Enabled' and 'IsAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'SQLSecurityAuditEvents' diagnostic logs category on the database should be also created.\r\nNote that for server level audit you should use the 'master' database as {databaseName}.\r\n\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", "type": "boolean" } } @@ -551,7 +551,7 @@ "type": "integer" }, "auditActionsAndGroups": { - "description": "Specifies the Actions-Groups and Actions to audit.\r\n\r\nThe recommended set of action groups to use is the following combination - this will audit all the queries and stored procedures executed against the database, as well as successful and failed logins:\r\n\r\nBATCH_COMPLETED_GROUP,\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,\r\nFAILED_DATABASE_AUTHENTICATION_GROUP.\r\n\r\nThis above combination is also the set that is configured by default when enabling auditing from the Azure portal.\r\n\r\nThe supported action groups to audit are (note: choose only specific groups that cover your auditing needs. Using unnecessary groups could lead to very large quantities of audit records):\r\n\r\nAPPLICATION_ROLE_CHANGE_PASSWORD_GROUP\r\nBACKUP_RESTORE_GROUP\r\nDATABASE_LOGOUT_GROUP\r\nDATABASE_OBJECT_CHANGE_GROUP\r\nDATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_OBJECT_PERMISSION_CHANGE_GROUP\r\nDATABASE_OPERATION_GROUP\r\nDATABASE_PERMISSION_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_IMPERSONATION_GROUP\r\nDATABASE_ROLE_MEMBER_CHANGE_GROUP\r\nFAILED_DATABASE_AUTHENTICATION_GROUP\r\nSCHEMA_OBJECT_ACCESS_GROUP\r\nSCHEMA_OBJECT_CHANGE_GROUP\r\nSCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nSCHEMA_OBJECT_PERMISSION_CHANGE_GROUP\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP\r\nUSER_CHANGE_PASSWORD_GROUP\r\nBATCH_STARTED_GROUP\r\nBATCH_COMPLETED_GROUP\r\n\r\nThese are groups that cover all sql statements and stored procedures executed against the database, and should not be used in combination with other groups as this will result in duplicate audit logs.\r\n\r\nFor more information, see [Database-Level Audit Action Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups).\r\n\r\nFor Database auditing policy, specific Actions can also be specified (note that Actions cannot be specified for Server auditing policy). The supported actions to audit are:\r\nSELECT\r\nUPDATE\r\nINSERT\r\nDELETE\r\nEXECUTE\r\nRECEIVE\r\nREFERENCES\r\n\r\nThe general form for defining an action to be audited is:\r\n ON BY \r\n\r\nNote that in the above format can refer to an object like a table, view, or stored procedure, or an entire database or schema. For the latter cases, the forms DATABASE:: and SCHEMA:: are used, respectively.\r\n\r\nFor example:\r\nSELECT on dbo.myTable by public\r\nSELECT on DATABASE::myDatabase by public\r\nSELECT on SCHEMA::mySchema by public\r\n\r\nFor more information, see [Database-Level Audit Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions)", + "description": "Specifies the Actions-Groups and Actions to audit.\r\n\r\nThe recommended set of action groups to use is the following combination - this will audit all the queries and stored procedures executed against the database, as well as successful and failed logins:\r\n\r\nBATCH_COMPLETED_GROUP,\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,\r\nFAILED_DATABASE_AUTHENTICATION_GROUP.\r\n\r\nThis above combination is also the set that is configured by default when enabling auditing from the Azure portal.\r\n\r\nThe supported action groups to audit are (note: choose only specific groups that cover your auditing needs. Using unnecessary groups could lead to very large quantities of audit records):\r\n\r\nAPPLICATION_ROLE_CHANGE_PASSWORD_GROUP\r\nBACKUP_RESTORE_GROUP\r\nDATABASE_LOGOUT_GROUP\r\nDATABASE_OBJECT_CHANGE_GROUP\r\nDATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_OBJECT_PERMISSION_CHANGE_GROUP\r\nDATABASE_OPERATION_GROUP\r\nDATABASE_PERMISSION_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_IMPERSONATION_GROUP\r\nDATABASE_ROLE_MEMBER_CHANGE_GROUP\r\nFAILED_DATABASE_AUTHENTICATION_GROUP\r\nSCHEMA_OBJECT_ACCESS_GROUP\r\nSCHEMA_OBJECT_CHANGE_GROUP\r\nSCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nSCHEMA_OBJECT_PERMISSION_CHANGE_GROUP\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP\r\nUSER_CHANGE_PASSWORD_GROUP\r\nBATCH_STARTED_GROUP\r\nBATCH_COMPLETED_GROUP\r\n\r\nThese are groups that cover all sql statements and stored procedures executed against the database, and should not be used in combination with other groups as this will result in duplicate audit logs.\r\n\r\nFor more information, see [Database-Level Audit Action Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups).\r\n\r\nFor Database auditing policy, specific Actions can also be specified (note that Actions cannot be specified for Server auditing policy). The supported actions to audit are:\r\nSELECT\r\nUPDATE\r\nINSERT\r\nDELETE\r\nEXECUTE\r\nRECEIVE\r\nREFERENCES\r\n\r\nThe general form for defining an action to be audited is:\r\n{action} ON {object} BY {principal}\r\n\r\nNote that in the above format can refer to an object like a table, view, or stored procedure, or an entire database or schema. For the latter cases, the forms DATABASE::{db_name} and SCHEMA::{schema_name} are used, respectively.\r\n\r\nFor example:\r\nSELECT on dbo.myTable by public\r\nSELECT on DATABASE::myDatabase by public\r\nSELECT on SCHEMA::mySchema by public\r\n\r\nFor more information, see [Database-Level Audit Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions)", "type": "array", "items": { "type": "string" @@ -567,7 +567,7 @@ "type": "boolean" }, "isAzureMonitorTargetEnabled": { - "description": "Specifies whether audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'State' as 'Enabled' and 'IsAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'SQLSecurityAuditEvents' diagnostic logs category on the database should be also created.\r\nNote that for server level audit you should use the 'master' database as .\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.Sql/servers//databases//providers/microsoft.insights/diagnosticSettings/?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", + "description": "Specifies whether audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'State' as 'Enabled' and 'IsAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'SQLSecurityAuditEvents' diagnostic logs category on the database should be also created.\r\nNote that for server level audit you should use the 'master' database as {databaseName}.\r\n\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", "type": "boolean" } } @@ -625,7 +625,7 @@ "type": "integer" }, "auditActionsAndGroups": { - "description": "Specifies the Actions-Groups and Actions to audit.\r\n\r\nThe recommended set of action groups to use is the following combination - this will audit all the queries and stored procedures executed against the database, as well as successful and failed logins:\r\n\r\nBATCH_COMPLETED_GROUP,\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,\r\nFAILED_DATABASE_AUTHENTICATION_GROUP.\r\n\r\nThis above combination is also the set that is configured by default when enabling auditing from the Azure portal.\r\n\r\nThe supported action groups to audit are (note: choose only specific groups that cover your auditing needs. Using unnecessary groups could lead to very large quantities of audit records):\r\n\r\nAPPLICATION_ROLE_CHANGE_PASSWORD_GROUP\r\nBACKUP_RESTORE_GROUP\r\nDATABASE_LOGOUT_GROUP\r\nDATABASE_OBJECT_CHANGE_GROUP\r\nDATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_OBJECT_PERMISSION_CHANGE_GROUP\r\nDATABASE_OPERATION_GROUP\r\nDATABASE_PERMISSION_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_IMPERSONATION_GROUP\r\nDATABASE_ROLE_MEMBER_CHANGE_GROUP\r\nFAILED_DATABASE_AUTHENTICATION_GROUP\r\nSCHEMA_OBJECT_ACCESS_GROUP\r\nSCHEMA_OBJECT_CHANGE_GROUP\r\nSCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nSCHEMA_OBJECT_PERMISSION_CHANGE_GROUP\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP\r\nUSER_CHANGE_PASSWORD_GROUP\r\nBATCH_STARTED_GROUP\r\nBATCH_COMPLETED_GROUP\r\n\r\nThese are groups that cover all sql statements and stored procedures executed against the database, and should not be used in combination with other groups as this will result in duplicate audit logs.\r\n\r\nFor more information, see [Database-Level Audit Action Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups).\r\n\r\nFor Database auditing policy, specific Actions can also be specified (note that Actions cannot be specified for Server auditing policy). The supported actions to audit are:\r\nSELECT\r\nUPDATE\r\nINSERT\r\nDELETE\r\nEXECUTE\r\nRECEIVE\r\nREFERENCES\r\n\r\nThe general form for defining an action to be audited is:\r\n ON BY \r\n\r\nNote that in the above format can refer to an object like a table, view, or stored procedure, or an entire database or schema. For the latter cases, the forms DATABASE:: and SCHEMA:: are used, respectively.\r\n\r\nFor example:\r\nSELECT on dbo.myTable by public\r\nSELECT on DATABASE::myDatabase by public\r\nSELECT on SCHEMA::mySchema by public\r\n\r\nFor more information, see [Database-Level Audit Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions)", + "description": "Specifies the Actions-Groups and Actions to audit.\r\n\r\nThe recommended set of action groups to use is the following combination - this will audit all the queries and stored procedures executed against the database, as well as successful and failed logins:\r\n\r\nBATCH_COMPLETED_GROUP,\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,\r\nFAILED_DATABASE_AUTHENTICATION_GROUP.\r\n\r\nThis above combination is also the set that is configured by default when enabling auditing from the Azure portal.\r\n\r\nThe supported action groups to audit are (note: choose only specific groups that cover your auditing needs. Using unnecessary groups could lead to very large quantities of audit records):\r\n\r\nAPPLICATION_ROLE_CHANGE_PASSWORD_GROUP\r\nBACKUP_RESTORE_GROUP\r\nDATABASE_LOGOUT_GROUP\r\nDATABASE_OBJECT_CHANGE_GROUP\r\nDATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_OBJECT_PERMISSION_CHANGE_GROUP\r\nDATABASE_OPERATION_GROUP\r\nDATABASE_PERMISSION_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_IMPERSONATION_GROUP\r\nDATABASE_ROLE_MEMBER_CHANGE_GROUP\r\nFAILED_DATABASE_AUTHENTICATION_GROUP\r\nSCHEMA_OBJECT_ACCESS_GROUP\r\nSCHEMA_OBJECT_CHANGE_GROUP\r\nSCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nSCHEMA_OBJECT_PERMISSION_CHANGE_GROUP\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP\r\nUSER_CHANGE_PASSWORD_GROUP\r\nBATCH_STARTED_GROUP\r\nBATCH_COMPLETED_GROUP\r\n\r\nThese are groups that cover all sql statements and stored procedures executed against the database, and should not be used in combination with other groups as this will result in duplicate audit logs.\r\n\r\nFor more information, see [Database-Level Audit Action Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups).\r\n\r\nFor Database auditing policy, specific Actions can also be specified (note that Actions cannot be specified for Server auditing policy). The supported actions to audit are:\r\nSELECT\r\nUPDATE\r\nINSERT\r\nDELETE\r\nEXECUTE\r\nRECEIVE\r\nREFERENCES\r\n\r\nThe general form for defining an action to be audited is:\r\n{action} ON {object} BY {principal}\r\n\r\nNote that in the above format can refer to an object like a table, view, or stored procedure, or an entire database or schema. For the latter cases, the forms DATABASE::{db_name} and SCHEMA::{schema_name} are used, respectively.\r\n\r\nFor example:\r\nSELECT on dbo.myTable by public\r\nSELECT on DATABASE::myDatabase by public\r\nSELECT on SCHEMA::mySchema by public\r\n\r\nFor more information, see [Database-Level Audit Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions)", "type": "array", "items": { "type": "string" @@ -641,7 +641,7 @@ "type": "boolean" }, "isAzureMonitorTargetEnabled": { - "description": "Specifies whether audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'State' as 'Enabled' and 'IsAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'SQLSecurityAuditEvents' diagnostic logs category on the database should be also created.\r\nNote that for server level audit you should use the 'master' database as .\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.Sql/servers//databases//providers/microsoft.insights/diagnosticSettings/?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", + "description": "Specifies whether audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'State' as 'Enabled' and 'IsAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'SQLSecurityAuditEvents' diagnostic logs category on the database should be also created.\r\nNote that for server level audit you should use the 'master' database as {databaseName}.\r\n\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", "type": "boolean" } } @@ -699,7 +699,7 @@ "type": "integer" }, "auditActionsAndGroups": { - "description": "Specifies the Actions-Groups and Actions to audit.\r\n\r\nThe recommended set of action groups to use is the following combination - this will audit all the queries and stored procedures executed against the database, as well as successful and failed logins:\r\n\r\nBATCH_COMPLETED_GROUP,\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,\r\nFAILED_DATABASE_AUTHENTICATION_GROUP.\r\n\r\nThis above combination is also the set that is configured by default when enabling auditing from the Azure portal.\r\n\r\nThe supported action groups to audit are (note: choose only specific groups that cover your auditing needs. Using unnecessary groups could lead to very large quantities of audit records):\r\n\r\nAPPLICATION_ROLE_CHANGE_PASSWORD_GROUP\r\nBACKUP_RESTORE_GROUP\r\nDATABASE_LOGOUT_GROUP\r\nDATABASE_OBJECT_CHANGE_GROUP\r\nDATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_OBJECT_PERMISSION_CHANGE_GROUP\r\nDATABASE_OPERATION_GROUP\r\nDATABASE_PERMISSION_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_IMPERSONATION_GROUP\r\nDATABASE_ROLE_MEMBER_CHANGE_GROUP\r\nFAILED_DATABASE_AUTHENTICATION_GROUP\r\nSCHEMA_OBJECT_ACCESS_GROUP\r\nSCHEMA_OBJECT_CHANGE_GROUP\r\nSCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nSCHEMA_OBJECT_PERMISSION_CHANGE_GROUP\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP\r\nUSER_CHANGE_PASSWORD_GROUP\r\nBATCH_STARTED_GROUP\r\nBATCH_COMPLETED_GROUP\r\n\r\nThese are groups that cover all sql statements and stored procedures executed against the database, and should not be used in combination with other groups as this will result in duplicate audit logs.\r\n\r\nFor more information, see [Database-Level Audit Action Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups).\r\n\r\nFor Database auditing policy, specific Actions can also be specified (note that Actions cannot be specified for Server auditing policy). The supported actions to audit are:\r\nSELECT\r\nUPDATE\r\nINSERT\r\nDELETE\r\nEXECUTE\r\nRECEIVE\r\nREFERENCES\r\n\r\nThe general form for defining an action to be audited is:\r\n ON BY \r\n\r\nNote that in the above format can refer to an object like a table, view, or stored procedure, or an entire database or schema. For the latter cases, the forms DATABASE:: and SCHEMA:: are used, respectively.\r\n\r\nFor example:\r\nSELECT on dbo.myTable by public\r\nSELECT on DATABASE::myDatabase by public\r\nSELECT on SCHEMA::mySchema by public\r\n\r\nFor more information, see [Database-Level Audit Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions)", + "description": "Specifies the Actions-Groups and Actions to audit.\r\n\r\nThe recommended set of action groups to use is the following combination - this will audit all the queries and stored procedures executed against the database, as well as successful and failed logins:\r\n\r\nBATCH_COMPLETED_GROUP,\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,\r\nFAILED_DATABASE_AUTHENTICATION_GROUP.\r\n\r\nThis above combination is also the set that is configured by default when enabling auditing from the Azure portal.\r\n\r\nThe supported action groups to audit are (note: choose only specific groups that cover your auditing needs. Using unnecessary groups could lead to very large quantities of audit records):\r\n\r\nAPPLICATION_ROLE_CHANGE_PASSWORD_GROUP\r\nBACKUP_RESTORE_GROUP\r\nDATABASE_LOGOUT_GROUP\r\nDATABASE_OBJECT_CHANGE_GROUP\r\nDATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_OBJECT_PERMISSION_CHANGE_GROUP\r\nDATABASE_OPERATION_GROUP\r\nDATABASE_PERMISSION_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_IMPERSONATION_GROUP\r\nDATABASE_ROLE_MEMBER_CHANGE_GROUP\r\nFAILED_DATABASE_AUTHENTICATION_GROUP\r\nSCHEMA_OBJECT_ACCESS_GROUP\r\nSCHEMA_OBJECT_CHANGE_GROUP\r\nSCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nSCHEMA_OBJECT_PERMISSION_CHANGE_GROUP\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP\r\nUSER_CHANGE_PASSWORD_GROUP\r\nBATCH_STARTED_GROUP\r\nBATCH_COMPLETED_GROUP\r\n\r\nThese are groups that cover all sql statements and stored procedures executed against the database, and should not be used in combination with other groups as this will result in duplicate audit logs.\r\n\r\nFor more information, see [Database-Level Audit Action Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups).\r\n\r\nFor Database auditing policy, specific Actions can also be specified (note that Actions cannot be specified for Server auditing policy). The supported actions to audit are:\r\nSELECT\r\nUPDATE\r\nINSERT\r\nDELETE\r\nEXECUTE\r\nRECEIVE\r\nREFERENCES\r\n\r\nThe general form for defining an action to be audited is:\r\n{action} ON {object} BY {principal}\r\n\r\nNote that in the above format can refer to an object like a table, view, or stored procedure, or an entire database or schema. For the latter cases, the forms DATABASE::{db_name} and SCHEMA::{schema_name} are used, respectively.\r\n\r\nFor example:\r\nSELECT on dbo.myTable by public\r\nSELECT on DATABASE::myDatabase by public\r\nSELECT on SCHEMA::mySchema by public\r\n\r\nFor more information, see [Database-Level Audit Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions)", "type": "array", "items": { "type": "string" @@ -715,7 +715,7 @@ "type": "boolean" }, "isAzureMonitorTargetEnabled": { - "description": "Specifies whether audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'State' as 'Enabled' and 'IsAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'SQLSecurityAuditEvents' diagnostic logs category on the database should be also created.\r\nNote that for server level audit you should use the 'master' database as .\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions//resourceGroups//providers/Microsoft.Sql/servers//databases//providers/microsoft.insights/diagnosticSettings/?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", + "description": "Specifies whether audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'State' as 'Enabled' and 'IsAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'SQLSecurityAuditEvents' diagnostic logs category on the database should be also created.\r\nNote that for server level audit you should use the 'master' database as {databaseName}.\r\n\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", "type": "boolean" } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessmentBaselines.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessmentBaselines.json index 994880c297fc..2fb99ff46b5a 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessmentBaselines.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessmentBaselines.json @@ -88,7 +88,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { @@ -177,7 +177,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { @@ -254,7 +254,7 @@ "description": "Successfully removed the database vulnerability assessment rule baseline." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessments.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessments.json index 7fcfd980c6b9..8a97f00afc0c 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessments.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessments.json @@ -66,7 +66,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature is not valid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { @@ -133,7 +133,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature is not valid.\n\n * 400 InvalidDatabaseVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." }, "201": { "description": "Successfully created the vulnerability assessment.", @@ -143,14 +143,14 @@ } }, "x-ms-examples": { - "Create a database's vulnerability assessment with all parameters": { - "$ref": "./examples/DatabaseVulnerabilityAssessmentCreateMax.json" - }, "Create a database's vulnerability assessment with minimal parameters, when storageContainerSasKey is specified": { - "$ref": "./examples/DatabaseVulnerabilityAssessmentCreateSasKeyMin.json" + "$ref": "./examples/DatabaseVulnerabilityAssessmentCreateContainerSasKeyMin.json" }, "Create a database's vulnerability assessment with minimal parameters, when storageAccountAccessKey is specified": { - "$ref": "./examples/DatabaseVulnerabilityAssessmentCreateStorageKeyMin.json" + "$ref": "./examples/DatabaseVulnerabilityAssessmentCreateStorageAccessKeyMin.json" + }, + "Create a database's vulnerability assessment with all parameters": { + "$ref": "./examples/DatabaseVulnerabilityAssessmentCreateMax.json" } } }, @@ -200,7 +200,7 @@ "description": "Successfully removed the database vulnerability assessment." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature is not valid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { @@ -209,18 +209,64 @@ } } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/vulnerabilityAssessments": { + "get": { + "tags": [ + "DatabaseVulnerabilityAssessments" + ], + "description": "Lists the vulnerability assessment policies associated with a database.", + "operationId": "DatabaseVulnerabilityAssessments_ListByDatabase", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database for which the vulnerability assessment policies are defined.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the database vulnerability assessment policies.", + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get the database's vulnerability assessment policies": { + "$ref": "./examples/DatabaseVulnerabilityAssessmentListByDatabase.json" + } + } + } } }, "definitions": { "DatabaseVulnerabilityAssessmentProperties": { "description": "Properties of a database Vulnerability Assessment.", - "required": [ - "storageContainerPath" - ], "type": "object", "properties": { "storageContainerPath": { - "description": "A blob storage container path to hold the scan results (e.g. https://myStorage.blob.core.windows.net/VaScans/).", + "description": "A blob storage container path to hold the scan results (e.g. https://myStorage.blob.core.windows.net/VaScans/). It is required if server level vulnerability assessment policy doesn't set", "type": "string", "x-ms-mutability": [ "create", @@ -236,7 +282,7 @@ ] }, "storageAccountAccessKey": { - "description": "Specifies the identifier key of the vulnerability assessment storage account. If 'StorageContainerSasKey' isn't specified, storageAccountAccessKey is required.", + "description": "Specifies the identifier key of the storage account for vulnerability assessment scan results. If 'StorageContainerSasKey' isn't specified, storageAccountAccessKey is required.", "type": "string", "x-ms-mutability": [ "create", @@ -286,6 +332,25 @@ "x-ms-client-flatten": true } } + }, + "DatabaseVulnerabilityAssessmentListResult": { + "description": "A list of the database's vulnerability assessments.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessment" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } } }, "parameters": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/DatabaseVulnerabilityAssessmentCreateContainerSasKeyMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseVulnerabilityAssessmentCreateContainerSasKeyMin.json similarity index 100% rename from specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/DatabaseVulnerabilityAssessmentCreateContainerSasKeyMin.json rename to specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseVulnerabilityAssessmentCreateContainerSasKeyMin.json diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseVulnerabilityAssessmentCreateSasKeyMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseVulnerabilityAssessmentCreateSasKeyMin.json deleted file mode 100644 index 121ad41dc081..000000000000 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseVulnerabilityAssessmentCreateSasKeyMin.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "vulnerabilityaseessmenttest-4799", - "serverName": "vulnerabilityaseessmenttest-6440", - "databaseName": "testdb", - "vulnerabilityAssessmentName": "default", - "api-version": "2017-03-01-preview", - "parameters": { - "properties": { - "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", - "storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" - } - } - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", - "name": "default", - "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", - "properties": { - "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", - "recurringScans": { - "isEnabled": true, - "emailSubscriptionAdmins": false, - "emails": [] - } - } - } - }, - "201": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", - "name": "default", - "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", - "properties": { - "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", - "recurringScans": { - "isEnabled": true, - "emailSubscriptionAdmins": false, - "emails": [] - } - } - } - } - } -} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/DatabaseVulnerabilityAssessmentCreateStorageAccessKeyMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseVulnerabilityAssessmentCreateStorageAccessKeyMin.json similarity index 100% rename from specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/DatabaseVulnerabilityAssessmentCreateStorageAccessKeyMin.json rename to specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseVulnerabilityAssessmentCreateStorageAccessKeyMin.json diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseVulnerabilityAssessmentCreateStorageKeyMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseVulnerabilityAssessmentCreateStorageKeyMin.json deleted file mode 100644 index 30ee42d4206c..000000000000 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseVulnerabilityAssessmentCreateStorageKeyMin.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "vulnerabilityaseessmenttest-4799", - "serverName": "vulnerabilityaseessmenttest-6440", - "databaseName": "testdb", - "vulnerabilityAssessmentName": "default", - "api-version": "2017-03-01-preview", - "parameters": { - "properties": { - "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", - "storageAccountAccessKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" - } - } - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", - "name": "default", - "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", - "properties": { - "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", - "recurringScans": { - "isEnabled": true, - "emailSubscriptionAdmins": false, - "emails": [] - } - } - } - }, - "201": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", - "name": "default", - "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", - "properties": { - "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", - "recurringScans": { - "isEnabled": true, - "emailSubscriptionAdmins": false, - "emails": [] - } - } - } - } - } -} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/DatabaseVulnerabilityAssessmentListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseVulnerabilityAssessmentListByDatabase.json similarity index 97% rename from specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/DatabaseVulnerabilityAssessmentListByDatabase.json rename to specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseVulnerabilityAssessmentListByDatabase.json index db1a430bf939..c70a2a22b9a6 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/DatabaseVulnerabilityAssessmentListByDatabase.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseVulnerabilityAssessmentListByDatabase.json @@ -3,7 +3,7 @@ "subscriptionId": "00000000-1111-2222-3333-444444444444", "resourceGroupName": "vulnerabilityaseessmenttest-4799", "serverName": "vulnerabilityaseessmenttest-6440", - "databaseName": "testdb", + "databaseName": "testdb", "vulnerabilityAssessmentName": "default", "api-version": "2018-06-01-preview" }, @@ -28,4 +28,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/GetListManagedShortTermRetentionPolicy.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/GetListManagedShortTermRetentionPolicy.json new file mode 100644 index 000000000000..0c6e8f5f9f8d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/GetListManagedShortTermRetentionPolicy.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "testsvr", + "databaseName": "testdb", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstance/testsvr/restorableDroppedDatabases/testdb,131403269876900000/backupShortTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/restorableDroppedDatabases/backupShortTermRetentionPolicies", + "properties": { + "retentionDays": 14 + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstance/testsvr/restorableDroppedDatabases/testdb,131403269876900000/backupShortTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/restorableDroppedDatabases/backupShortTermRetentionPolicies", + "properties": { + "retentionDays": 14 + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/GetListManagedShortTermRetentionPolicyRestorableDropped.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/GetListManagedShortTermRetentionPolicyRestorableDropped.json new file mode 100644 index 000000000000..35f09cae6cfc --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/GetListManagedShortTermRetentionPolicyRestorableDropped.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "testsvr", + "restorableDroppedDatabaseId": "testdb,131403269876900000", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstance/testsvr/restorableDroppedDatabases/testdb,131403269876900000/backupShortTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/restorableDroppedDatabases/backupShortTermRetentionPolicies", + "properties": { + "retentionDays": 14 + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstance/testsvr/restorableDroppedDatabases/testdb,131403269876900000/backupShortTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/restorableDroppedDatabases/backupShortTermRetentionPolicies", + "properties": { + "retentionDays": 14 + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/GetManagedShortTermRetentionPolicy.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/GetManagedShortTermRetentionPolicy.json new file mode 100644 index 000000000000..6f2e17aaa06a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/GetManagedShortTermRetentionPolicy.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "testsvr", + "databaseName": "testdb", + "policyName": "default", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstance/testsvr/databases/testdb/backupShortTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/databases/backupShortTermRetentionPolicies", + "properties": { + "retentionDays": 14 + } + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/GetManagedShortTermRetentionPolicyRestorableDropped.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/GetManagedShortTermRetentionPolicyRestorableDropped.json new file mode 100644 index 000000000000..02d39ec2858f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/GetManagedShortTermRetentionPolicyRestorableDropped.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "testsvr", + "restorableDroppedDatabaseId": "testdb,131403269876900000", + "policyName": "default", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstance/testsvr/restorableDroppedDatabases/testdb,131403269876900000/backupShortTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/restorableDroppedDatabases/backupShortTermRetentionPolicies", + "properties": { + "retentionDays": 14 + } + } + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/UpdateManagedShortTermRetentionPolicy.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/UpdateManagedShortTermRetentionPolicy.json new file mode 100644 index 000000000000..d359fe738faa --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/UpdateManagedShortTermRetentionPolicy.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup", + "managedInstanceName": "testsvr", + "databaseName": "testdb", + "policyName": "default", + "api-version": "2017-03-01-preview", + "parameters": { + "retentionDays": 14 + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup/providers/Microsoft.Sql/managedInstance/testsvr/databases/testdb/backupShortTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/databases/backupShortTermRetentionPolicies", + "properties": { + "retentionDays": 14 + } + } + }, + "202": { + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/UpdateManagedShortTermRetentionPolicyRestorableDropped.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/UpdateManagedShortTermRetentionPolicyRestorableDropped.json new file mode 100644 index 000000000000..a11cd4705fcc --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/UpdateManagedShortTermRetentionPolicyRestorableDropped.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup", + "managedInstanceName": "testsvr", + "restorableDroppedDatabaseId": "testdb,131403269876900000", + "policyName": "default", + "api-version": "2017-03-01-preview", + "parameters": { + "retentionDays": 14 + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup/providers/Microsoft.Sql/managedInstance/testsvr/restorableDroppedDatabases/testdb,131403269876900000/backupShortTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/managedInstances/restorableDroppedDatabases/backupShortTermRetentionPolicies", + "properties": { + "retentionDays": 14 + } + } + }, + "202": { + } + } +} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/sensitivityLabels.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/sensitivityLabels.json index 89df847f80f4..6ab44b268dbc 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/sensitivityLabels.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/sensitivityLabels.json @@ -327,7 +327,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\n\n * 400 InvalidSensitivityLabelResource - The specified sensitivity label resource is not valid\n\n * 400 SensitivityLabelLabelNameAndInfoTypeNotProvided - At least one of LabelName and InformationType must be specified\n\n * 400 LabelNameTooLong - Label name cannot exceed {0} characters\n\n * 400 InformationTypeTooLong - Information type cannot exceed {0} characters\n\n * 404 SensitivityLabelsColumnNotFound - The specified schema/table/column could not be found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet" + "description": "*** Error Responses: ***\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\n\n * 400 InvalidSensitivityLabelResource - The specified sensitivity label resource is not valid\n\n * 400 SensitivityLabelLabelNameAndInfoTypeNotProvided - At least one of LabelName and InformationType must be specified\n\n * 400 LabelNameTooLong - Label name cannot exceed {0} characters\n\n * 400 InformationTypeTooLong - Information type cannot exceed {0} characters\n\n * 400 LabelIdMustBeGuid - Label ID must be a GUID\n\n * 400 InformationTypeIdMustBeGuid - Information type ID must be a GUID\n\n * 400 LabelMissing - Label is missing\n\n * 400 InformationTypeMissing - Information Type is missing\n\n * 404 SensitivityLabelsColumnNotFound - The specified schema/table/column could not be found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet" }, "201": { "description": "Successfully created the sensitivity label.", @@ -425,9 +425,17 @@ "description": "The label name.", "type": "string" }, + "labelId": { + "description": "The label ID.", + "type": "string" + }, "informationType": { "description": "The information type.", "type": "string" + }, + "informationTypeId": { + "description": "The information type ID.", + "type": "string" } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/databaseVulnerabilityAssessmentScans.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/databaseVulnerabilityAssessmentScans.json index b71a26acb61c..f7a244ea8ef9 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/databaseVulnerabilityAssessmentScans.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/databaseVulnerabilityAssessmentScans.json @@ -16,13 +16,13 @@ "application/json" ], "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans/{scanId}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans": { "get": { "tags": [ "DatabaseVulnerabilityAssessmentScans" ], - "description": "Gets a vulnerability assessment scan record of a database.", - "operationId": "DatabaseVulnerabilityAssessmentScans_Get", + "description": "Lists the vulnerability assessment scans of a database.", + "operationId": "DatabaseVulnerabilityAssessmentScans_ListByDatabase", "parameters": [ { "$ref": "#/parameters/ResourceGroupParameter" @@ -47,13 +47,6 @@ "modelAsString": true } }, - { - "name": "scanId", - "in": "path", - "description": "The vulnerability assessment scan Id of the scan to retrieve.", - "required": true, - "type": "string" - }, { "$ref": "#/parameters/SubscriptionIdParameter" }, @@ -63,29 +56,32 @@ ], "responses": { "200": { - "description": "Successfully retrieved the database vulnerability assessment scan record.", + "description": "Successfully retrieved the database vulnerability assessment scan records.", "schema": { - "$ref": "#/definitions/VulnerabilityAssessmentScanRecord" + "$ref": "#/definitions/VulnerabilityAssessmentScanRecordListResult" } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature is not valid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 DatabaseVulnerabilityAssessmentOperationFailed - An error has occurred while trying to execute Vulnerability Assessment operation, please try again later" + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { - "Gets a database vulnerability assessment scan record by scan ID": { - "$ref": "./examples/DatabaseVulnerabilityAssessmentScanRecordsGet.json" + "Gets the list of a database vulnerability assessment scan records": { + "$ref": "./examples/DatabaseVulnerabilityAssessmentScanRecordsListByDatabase.json" } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans/{scanId}/initiateScan": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans/{scanId}": { + "get": { "tags": [ "DatabaseVulnerabilityAssessmentScans" ], - "description": "Executes a Vulnerability Assessment database scan.", - "operationId": "DatabaseVulnerabilityAssessmentScans_InitiateScan", + "description": "Gets a vulnerability assessment scan record of a database.", + "operationId": "DatabaseVulnerabilityAssessmentScans_Get", "parameters": [ { "$ref": "#/parameters/ResourceGroupParameter" @@ -126,30 +122,29 @@ ], "responses": { "200": { - "description": "Successfully executed a Vulnerability Assessment database scan." + "description": "Successfully retrieved the database vulnerability assessment scan record.", + "schema": { + "$ref": "#/definitions/VulnerabilityAssessmentScanRecord" + } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 InvalidVulnerabilityAssessmentScanIdLength - The vulnerability assessment scan ID length must be below {0} characters.\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature is not valid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseVulnerabilityAssessmentOperationFailed - An error has occurred while trying to execute Vulnerability Assessment operation, please try again later\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." - }, - "202": { - "description": "Successfully started a Vulnerability Assessment database scan." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, - "x-ms-long-running-operation": true, "x-ms-examples": { - "Executes a database's vulnerability assessment scan.": { - "$ref": "./examples/DatabaseVulnerabilityAssessmentScansExecute.json" + "Gets a database vulnerability assessment scan record by scan ID": { + "$ref": "./examples/DatabaseVulnerabilityAssessmentScanRecordsGet.json" } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans/{scanId}/initiateScan": { + "post": { "tags": [ - "DatabaseVulnerabilityAssessmentScans" + "DatabaseVulnerabilityAssessmentScansExecute" ], - "description": "Lists the vulnerability assessment scans of a database.", - "operationId": "DatabaseVulnerabilityAssessmentScans_ListByDatabase", + "description": "Executes a Vulnerability Assessment database scan.", + "operationId": "DatabaseVulnerabilityAssessmentScans_InitiateScan", "parameters": [ { "$ref": "#/parameters/ResourceGroupParameter" @@ -174,6 +169,13 @@ "modelAsString": true } }, + { + "name": "scanId", + "in": "path", + "description": "The vulnerability assessment scan Id of the scan to retrieve.", + "required": true, + "type": "string" + }, { "$ref": "#/parameters/SubscriptionIdParameter" }, @@ -183,21 +185,19 @@ ], "responses": { "200": { - "description": "Successfully retrieved the database vulnerability assessment scan records.", - "schema": { - "$ref": "#/definitions/VulnerabilityAssessmentScanRecordListResult" - } + "description": "Successfully executed a Vulnerability Assessment database scan." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature is not valid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 DatabaseVulnerabilityAssessmentOperationFailed - An error has occurred while trying to execute Vulnerability Assessment operation, please try again later" + "description": "*** Error Responses: ***\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 InvalidVulnerabilityAssessmentScanIdLength - The vulnerability assessment scan ID length must be below {0} characters.\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + }, + "202": { + "description": "Successfully started a Vulnerability Assessment database scan." } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, + "x-ms-long-running-operation": true, "x-ms-examples": { - "Gets the list of a database vulnerability assessment scan records": { - "$ref": "./examples/DatabaseVulnerabilityAssessmentScanRecordsListByDatabase.json" + "Executes a database's vulnerability assessment scan.": { + "$ref": "./examples/DatabaseVulnerabilityAssessmentScansExecute.json" } } } @@ -259,7 +259,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature is not valid.\n\n * 400 InvalidDatabaseVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 DatabaseVulnerabilityAssessmentOperationFailed - An error has occurred while trying to execute Vulnerability Assessment operation, please try again later" + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." }, "201": { "description": "Scan result was converted successfully.", @@ -277,25 +277,22 @@ } }, "definitions": { - "VulnerabilityAssessmentRecurringScansProperties": { - "description": "Properties of a Vulnerability Assessment recurring scans.", + "VulnerabilityAssessmentScanRecordListResult": { + "description": "A list of vulnerability assessment scan records.", "type": "object", "properties": { - "isEnabled": { - "description": "Recurring scans state.", - "type": "boolean" - }, - "emailSubscriptionAdmins": { - "description": "Specifies that the schedule scan notification will be is sent to the subscription administrators.", - "default": true, - "type": "boolean" - }, - "emails": { - "description": "Specifies an array of e-mail addresses to which the scan notification is sent.", + "value": { + "description": "Array of results.", "type": "array", "items": { - "type": "string" - } + "$ref": "#/definitions/VulnerabilityAssessmentScanRecord" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true } } }, @@ -401,25 +398,6 @@ } } }, - "VulnerabilityAssessmentScanRecordListResult": { - "description": "A list of vulnerability assessment scan records.", - "type": "object", - "properties": { - "value": { - "description": "Array of results.", - "type": "array", - "items": { - "$ref": "#/definitions/VulnerabilityAssessmentScanRecord" - }, - "readOnly": true - }, - "nextLink": { - "description": "Link to retrieve next page of results.", - "type": "string", - "readOnly": true - } - } - }, "DatabaseVulnerabilityAssessmentScanExportProperties": { "description": "Properties of the export operation's result.", "type": "object", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/DatabaseVulnerabilityAssessmentScansExecute.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/DatabaseVulnerabilityAssessmentScansExecute.json index 79dfbb4f8780..adbd6eb90e53 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/DatabaseVulnerabilityAssessmentScansExecute.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/DatabaseVulnerabilityAssessmentScansExecute.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "00000000-1111-2222-3333-444444444444", "resourceGroupName": "vulnerabilityassessmenttest-4711", - "serverName": "vulnerabilityassessmenttest-6440", + "serverName": "vulnerabilityassessmenttest-6411", "databaseName": "testdb", "vulnerabilityAssessmentName": "default", "scanId": "scan01", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentListByDatabase.json similarity index 100% rename from specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentListByDatabase.json rename to specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentListByDatabase.json diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssesmentRuleBaselines.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssesmentRuleBaselines.json index bb0e0f296906..2cdce03b6ccb 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssesmentRuleBaselines.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssesmentRuleBaselines.json @@ -92,7 +92,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { @@ -185,7 +185,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { @@ -266,7 +266,7 @@ "description": "Successfully removed the database vulnerability assessment rule baseline." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssessmentScans.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssessmentScans.json index a400eb71cfeb..63dac3d431eb 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssessmentScans.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssessmentScans.json @@ -66,7 +66,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-pageable": { @@ -136,7 +136,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { @@ -200,7 +200,7 @@ "description": "Successfully executed a Vulnerability Assessment database scan." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidDatabaseVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 InvalidVulnerabilityAssessmentScanIdLength - The vulnerability assessment scan ID length must be below {0} characters.\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 InvalidVulnerabilityAssessmentScanIdLength - The vulnerability assessment scan ID length must be below {0} characters.\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." }, "202": { "description": "Successfully started a Vulnerability Assessment database scan." @@ -275,7 +275,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 InvalidDatabaseVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." }, "201": { "description": "Scan result was converted successfully.", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssessments.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssessments.json index fd9ef090237a..f7891dbc7934 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssessments.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-10-01-preview/managedDatabaseVulnerabilityAssessments.json @@ -70,7 +70,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { @@ -141,7 +141,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 InvalidDatabaseVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." }, "201": { "description": "Successfully created the vulnerability assessment.", @@ -209,7 +209,7 @@ "description": "Successfully removed the database vulnerability assessment." }, "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." } }, "x-ms-examples": { @@ -218,18 +218,68 @@ } } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments": { + "get": { + "tags": [ + "ManagedDatabaseVulnerabilityAssessments" + ], + "description": "Lists the vulnerability assessments of a managed database.", + "operationId": "ManagedDatabaseVulnerabilityAssessments_ListByDatabase", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the database for which the vulnerability assessment is defined.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the database vulnerability assessments.", + "schema": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessmentListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a database's vulnerability assessments list": { + "$ref": "./examples/ManagedDatabaseVulnerabilityAssessmentListByDatabase.json" + } + } + } } }, "definitions": { "DatabaseVulnerabilityAssessmentProperties": { "description": "Properties of a database Vulnerability Assessment.", - "required": [ - "storageContainerPath" - ], "type": "object", "properties": { "storageContainerPath": { - "description": "A blob storage container path to hold the scan results (e.g. https://myStorage.blob.core.windows.net/VaScans/).", + "description": "A blob storage container path to hold the scan results (e.g. https://myStorage.blob.core.windows.net/VaScans/). It is required if server level vulnerability assessment policy doesn't set", "type": "string", "x-ms-mutability": [ "create", @@ -245,7 +295,7 @@ ] }, "storageAccountAccessKey": { - "description": "Specifies the identifier key of the vulnerability assessment storage account. If 'StorageContainerSasKey' isn't specified, storageAccountAccessKey is required.", + "description": "Specifies the identifier key of the storage account for vulnerability assessment scan results. If 'StorageContainerSasKey' isn't specified, storageAccountAccessKey is required.", "type": "string", "x-ms-mutability": [ "create", @@ -295,6 +345,25 @@ "x-ms-client-flatten": true } } + }, + "DatabaseVulnerabilityAssessmentListResult": { + "description": "A list of the database's vulnerability assessments.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseVulnerabilityAssessment" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } } }, "parameters": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/DatabaseVulnerabilityAssessment.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/DatabaseVulnerabilityAssessment.json deleted file mode 100644 index b7c6b90bec7e..000000000000 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/DatabaseVulnerabilityAssessment.json +++ /dev/null @@ -1,258 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "2018-06-01-preview", - "title": "SqlManagementClient", - "description": "The Azure SQL Database management API provides a RESTful set of web APIs that interact with Azure SQL Database services to manage your databases. The API enables users to create, retrieve, update, and delete databases, servers, and other entities." - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/vulnerabilityAssessments": { - "get": { - "tags": [ - "DatabaseVulnerabilityAssessments" - ], - "description": "Lists the vulnerability assessment policies associated with a database.", - "operationId": "DatabaseVulnerabilityAssessments_ListByDatabase", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/ServerNameParameter" - }, - { - "name": "databaseName", - "in": "path", - "description": "The name of the database for which the vulnerability assessment policies are defined.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved the database vulnerability assessment policies.", - "schema": { - "$ref": "#/definitions/DatabaseVulnerabilityAssessmentListResult" - } - }, - "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Get the database's vulnerability assessment policies": { - "$ref": "./examples/DatabaseVulnerabilityAssessmentListByDatabase.json" - } - } - } - } - }, - "definitions": { - "DatabaseVulnerabilityAssessmentListResult": { - "description": "A list of the database's vulnerability assessments.", - "type": "object", - "properties": { - "value": { - "description": "Array of results.", - "type": "array", - "items": { - "$ref": "#/definitions/DatabaseVulnerabilityAssessment" - }, - "readOnly": true - }, - "nextLink": { - "description": "Link to retrieve next page of results.", - "type": "string", - "readOnly": true - } - } - }, - "DatabaseVulnerabilityAssessmentProperties": { - "description": "Properties of a database Vulnerability Assessment.", - "type": "object", - "properties": { - "storageContainerPath": { - "description": "A blob storage container path to hold the scan results (e.g. https://myStorage.blob.core.windows.net/VaScans/). It is required if server level vulnerability assessment policy doesn't set", - "type": "string", - "x-ms-mutability": [ - "create", - "update" - ] - }, - "storageContainerSasKey": { - "description": "A shared access signature (SAS Key) that has write access to the blob container specified in 'storageContainerPath' parameter. If 'storageAccountAccessKey' isn't specified, StorageContainerSasKey is required.", - "type": "string", - "x-ms-mutability": [ - "create", - "update" - ] - }, - "storageAccountAccessKey": { - "description": "Specifies the identifier key of the storage account for vulnerability assessment scan results. If 'StorageContainerSasKey' isn't specified, storageAccountAccessKey is required.", - "type": "string", - "x-ms-mutability": [ - "create", - "update" - ] - }, - "recurringScans": { - "$ref": "#/definitions/VulnerabilityAssessmentRecurringScansProperties", - "description": "The recurring scans settings" - } - } - }, - "VulnerabilityAssessmentRecurringScansProperties": { - "description": "Properties of a Vulnerability Assessment recurring scans.", - "type": "object", - "properties": { - "isEnabled": { - "description": "Recurring scans state.", - "type": "boolean" - }, - "emailSubscriptionAdmins": { - "description": "Specifies that the schedule scan notification will be is sent to the subscription administrators.", - "default": true, - "type": "boolean" - }, - "emails": { - "description": "Specifies an array of e-mail addresses to which the scan notification is sent.", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "DatabaseVulnerabilityAssessment": { - "description": "A database vulnerability assessment.", - "type": "object", - "allOf": [ - { - "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/DatabaseVulnerabilityAssessmentProperties", - "description": "Resource properties.", - "x-ms-client-flatten": true - } - } - } - }, - "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "description": "The subscription ID that identifies an Azure subscription.", - "required": true, - "type": "string", - "x-ms-parameter-location": "client" - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "description": "The API version to use for the request.", - "required": true, - "type": "string", - "x-ms-parameter-location": "client" - }, - "ResourceGroupParameter": { - "name": "resourceGroupName", - "in": "path", - "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "ServerNameParameter": { - "name": "serverName", - "in": "path", - "description": "The name of the server.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "ManagedInstanceNameParameter": { - "name": "managedInstanceName", - "in": "path", - "description": "The name of the managed instance.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "DatabaseNameParameter": { - "name": "databaseName", - "in": "path", - "description": "The name of the database.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "BlobAuditingPolicyNameParameter": { - "name": "blobAuditingPolicyName", - "in": "path", - "description": "The name of the blob auditing policy.", - "required": true, - "type": "string", - "enum": [ - "default" - ], - "x-ms-parameter-location": "method" - }, - "SqlVirtualMachineInstanceNameParameter": { - "name": "sqlVirtualMachineInstanceName", - "in": "path", - "description": "The name of the SqlVirtualMachineInstance.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "SqlVirtualMachineContainerNameParameter": { - "name": "sqlVirtualMachineContainerName", - "in": "path", - "description": "The name of the SqlVirtualMachineContainer.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "VirtualClusterNameParameter": { - "name": "virtualClusterName", - "in": "path", - "description": "The name of the virtual cluster.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - } - }, - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "description": "Azure Active Directory OAuth2 Flow", - "flow": "implicit", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - } -} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/ManagedDatabaseVulnerabilityAssessments.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/ManagedDatabaseVulnerabilityAssessments.json deleted file mode 100644 index a108cdcf5d7c..000000000000 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/ManagedDatabaseVulnerabilityAssessments.json +++ /dev/null @@ -1,262 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "2018-06-01-preview", - "title": "SqlManagementClient", - "description": "The Azure SQL Database management API provides a RESTful set of web APIs that interact with Azure SQL Database services to manage your databases. The API enables users to create, retrieve, update, and delete databases, servers, and other entities." - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/vulnerabilityAssessments": { - "get": { - "tags": [ - "ManagedDatabaseVulnerabilityAssessments" - ], - "description": "Lists the vulnerability assessments of a database.", - "operationId": "ManagedDatabaseVulnerabilityAssessments_ListByDatabase", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupParameter" - }, - { - "name": "managedInstanceName", - "in": "path", - "description": "The name of the managed instance.", - "required": true, - "type": "string" - }, - { - "name": "databaseName", - "in": "path", - "description": "The name of the database for which the vulnerability assessment is defined.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved the database vulnerability assessments.", - "schema": { - "$ref": "#/definitions/DatabaseVulnerabilityAssessmentListResult" - } - }, - "default": { - "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Get a database's vulnerability assessments list": { - "$ref": "./examples/ManagedDatabaseVulnerabilityAssessmentListByDatabase.json" - } - } - } - } - }, - "definitions": { - "DatabaseVulnerabilityAssessmentListResult": { - "description": "A list of the database's vulnerability assessments.", - "type": "object", - "properties": { - "value": { - "description": "Array of results.", - "type": "array", - "items": { - "$ref": "#/definitions/DatabaseVulnerabilityAssessment" - }, - "readOnly": true - }, - "nextLink": { - "description": "Link to retrieve next page of results.", - "type": "string", - "readOnly": true - } - } - }, - "DatabaseVulnerabilityAssessmentProperties": { - "description": "Properties of a database Vulnerability Assessment.", - "type": "object", - "properties": { - "storageContainerPath": { - "description": "A blob storage container path to hold the scan results (e.g. https://myStorage.blob.core.windows.net/VaScans/). It is required if server level vulnerability assessment policy doesn't set", - "type": "string", - "x-ms-mutability": [ - "create", - "update" - ] - }, - "storageContainerSasKey": { - "description": "A shared access signature (SAS Key) that has write access to the blob container specified in 'storageContainerPath' parameter. If 'storageAccountAccessKey' isn't specified, StorageContainerSasKey is required.", - "type": "string", - "x-ms-mutability": [ - "create", - "update" - ] - }, - "storageAccountAccessKey": { - "description": "Specifies the identifier key of the storage account for vulnerability assessment scan results. If 'StorageContainerSasKey' isn't specified, storageAccountAccessKey is required.", - "type": "string", - "x-ms-mutability": [ - "create", - "update" - ] - }, - "recurringScans": { - "$ref": "#/definitions/VulnerabilityAssessmentRecurringScansProperties", - "description": "The recurring scans settings" - } - } - }, - "VulnerabilityAssessmentRecurringScansProperties": { - "description": "Properties of a Vulnerability Assessment recurring scans.", - "type": "object", - "properties": { - "isEnabled": { - "description": "Recurring scans state.", - "type": "boolean" - }, - "emailSubscriptionAdmins": { - "description": "Specifies that the schedule scan notification will be is sent to the subscription administrators.", - "default": true, - "type": "boolean" - }, - "emails": { - "description": "Specifies an array of e-mail addresses to which the scan notification is sent.", - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "DatabaseVulnerabilityAssessment": { - "description": "A database vulnerability assessment.", - "type": "object", - "allOf": [ - { - "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/DatabaseVulnerabilityAssessmentProperties", - "description": "Resource properties.", - "x-ms-client-flatten": true - } - } - } - }, - "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "description": "The subscription ID that identifies an Azure subscription.", - "required": true, - "type": "string", - "x-ms-parameter-location": "client" - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "description": "The API version to use for the request.", - "required": true, - "type": "string", - "x-ms-parameter-location": "client" - }, - "ResourceGroupParameter": { - "name": "resourceGroupName", - "in": "path", - "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "ServerNameParameter": { - "name": "serverName", - "in": "path", - "description": "The name of the server.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "ManagedInstanceNameParameter": { - "name": "managedInstanceName", - "in": "path", - "description": "The name of the managed instance.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "DatabaseNameParameter": { - "name": "databaseName", - "in": "path", - "description": "The name of the database.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "BlobAuditingPolicyNameParameter": { - "name": "blobAuditingPolicyName", - "in": "path", - "description": "The name of the blob auditing policy.", - "required": true, - "type": "string", - "enum": [ - "default" - ], - "x-ms-parameter-location": "method" - }, - "SqlVirtualMachineInstanceNameParameter": { - "name": "sqlVirtualMachineInstanceName", - "in": "path", - "description": "The name of the SqlVirtualMachineInstance.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "SqlVirtualMachineContainerNameParameter": { - "name": "sqlVirtualMachineContainerName", - "in": "path", - "description": "The name of the SqlVirtualMachineContainer.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "VirtualClusterNameParameter": { - "name": "virtualClusterName", - "in": "path", - "description": "The name of the virtual cluster.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - } - }, - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "description": "Azure Active Directory OAuth2 Flow", - "flow": "implicit", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - } -} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ColumnSensitivityLabelCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ColumnSensitivityLabelCreateMax.json deleted file mode 100644 index fe6131a05b41..000000000000 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ColumnSensitivityLabelCreateMax.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "myRG", - "serverName": "myServer", - "databaseName": "myDatabase", - "schemaName": "dbo", - "tableName": "myTable", - "columnName": "myColumn", - "sensitivityLabelSource": "current", - "api-version": "2017-03-01-preview", - "parameters": { - "properties": { - "labelName": "PII", - "informationType": "PhoneNumber" - } - } - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/myServer/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/current", - "name": "current", - "type": "Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels", - "properties": { - "labelName": "PII", - "informationType": "PhoneNumber" - } - } - }, - "201": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/myServer/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/current", - "name": "current", - "type": "Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels", - "properties": { - "labelName": "PII", - "informationType": "PhoneNumber" - } - } - } - } -} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ColumnSensitivityLabelDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ColumnSensitivityLabelDelete.json deleted file mode 100644 index d696fb91ed5e..000000000000 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ColumnSensitivityLabelDelete.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "myRG", - "serverName": "myServer", - "databaseName": "myDatabase", - "schemaName": "dbo", - "tableName": "myTable", - "columnName": "myColumn", - "sensitivityLabelSource": "current", - "api-version": "2017-03-01-preview" - }, - "responses": { - "200": { - } - } -} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ColumnSensitivityLabelGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ColumnSensitivityLabelGet.json deleted file mode 100644 index e3e5f81b1493..000000000000 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ColumnSensitivityLabelGet.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "myRG", - "serverName": "myServer", - "databaseName": "myDatabase", - "schemaName": "dbo", - "tableName": "myTable", - "columnName": "myColumn", - "sensitivityLabelSource": "current", - "api-version": "2017-03-01-preview" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/myServer/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/current", - "name": "current", - "type": "Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels", - "properties": { - "labelName": "PII", - "informationType": "PhoneNumber" - } - } - } - } -} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/DatabaseVulnerabilityAssessmentCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/DatabaseVulnerabilityAssessmentCreateMax.json deleted file mode 100644 index 75862b1e65c3..000000000000 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/DatabaseVulnerabilityAssessmentCreateMax.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "vulnerabilityaseessmenttest-4799", - "serverName": "vulnerabilityaseessmenttest-6440", - "databaseName": "testdb", - "vulnerabilityAssessmentName": "default", - "api-version": "2017-03-01-preview", - "parameters": { - "properties": { - "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", - "storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", - "storageAccountAccessKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", - "recurringScans": { - "isEnabled": true, - "emailSubscriptionAdmins": true, - "emails": [ "email1@mail.com", "email2@mail.com" ] - } - } - } - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", - "name": "default", - "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", - "properties": { - "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", - "recurringScans": { - "isEnabled": true, - "emailSubscriptionAdmins": true, - "emails": [ "email1@mail.com", "email2@mail.com" ] - } - } - } - }, - "201": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", - "name": "default", - "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", - "properties": { - "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", - "recurringScans": { - "isEnabled": true, - "emailSubscriptionAdmins": true, - "emails": [ "email1@mail.com", "email2@mail.com" ] - } - } - } - } - } -} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/DatabaseVulnerabilityAssessmentDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/DatabaseVulnerabilityAssessmentDelete.json deleted file mode 100644 index b6cfa2303d4e..000000000000 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/DatabaseVulnerabilityAssessmentDelete.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "vulnerabilityaseessmenttest-4799", - "serverName": "vulnerabilityaseessmenttest-6440", - "databaseName": "testdb", - "vulnerabilityAssessmentName": "default", - "api-version": "2017-03-01-preview" - }, - "responses": { - "200": { - } - } -} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/DatabaseVulnerabilityAssessmentGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/DatabaseVulnerabilityAssessmentGet.json deleted file mode 100644 index 2c583ee4a055..000000000000 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/DatabaseVulnerabilityAssessmentGet.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "vulnerabilityaseessmenttest-4799", - "serverName": "vulnerabilityaseessmenttest-6440", - "databaseName": "testdb", - "vulnerabilityAssessmentName": "default", - "api-version": "2017-03-01-preview" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/servers/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", - "name": "default", - "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", - "properties": { - "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", - "recurringScans": { - "isEnabled": true, - "emailSubscriptionAdmins": true, - "emails": [ "email1@mail.com", "email2@mail.com" ] - } - } - } - } - } -} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentCreateMax.json deleted file mode 100644 index f028be63d685..000000000000 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentCreateMax.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "vulnerabilityaseessmenttest-4799", - "managedInstanceName": "vulnerabilityaseessmenttest-6440", - "databaseName": "testdb", - "vulnerabilityAssessmentName": "default", - "api-version": "2017-10-01-preview", - "parameters": { - "properties": { - "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", - "storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", - "recurringScans": { - "isEnabled": true, - "emailSubscriptionAdmins": true, - "emails": [ "email1@mail.com", "email2@mail.com" ] - } - } - } - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", - "name": "default", - "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", - "properties": { - "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", - "recurringScans": { - "isEnabled": true, - "emailSubscriptionAdmins": true, - "emails": [ "email1@mail.com", "email2@mail.com" ] - } - } - } - }, - "201": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", - "name": "default", - "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", - "properties": { - "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", - "recurringScans": { - "isEnabled": true, - "emailSubscriptionAdmins": true, - "emails": [ "email1@mail.com", "email2@mail.com" ] - } - } - } - } - } -} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentCreateMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentCreateMin.json deleted file mode 100644 index ace54ecf7ca1..000000000000 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentCreateMin.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "vulnerabilityaseessmenttest-4799", - "managedInstanceName": "vulnerabilityaseessmenttest-6440", - "databaseName": "testdb", - "vulnerabilityAssessmentName": "default", - "api-version": "2017-10-01-preview", - "parameters": { - "properties": { - "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", - "storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" - } - } - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", - "name": "default", - "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", - "properties": { - "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", - "recurringScans": { - "isEnabled": false, - "emailSubscriptionAdmins": false, - "emails": [] - } - } - } - }, - "201": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", - "name": "default", - "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", - "properties": { - "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", - "recurringScans": { - "isEnabled": false, - "emailSubscriptionAdmins": false, - "emails": [] - } - } - } - } - } -} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentDelete.json deleted file mode 100644 index 6815fcdb5093..000000000000 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentDelete.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "vulnerabilityaseessmenttest-4799", - "managedInstanceName": "vulnerabilityaseessmenttest-6440", - "databaseName": "testdb", - "vulnerabilityAssessmentName": "default", - "api-version": "2017-10-01-preview" - }, - "responses": { - "200": { - } - } -} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentGet.json deleted file mode 100644 index f88ef60d2c6a..000000000000 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseVulnerabilityAssessmentGet.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "vulnerabilityaseessmenttest-4799", - "managedInstanceName": "vulnerabilityaseessmenttest-6440", - "databaseName": "testdb", - "vulnerabilityAssessmentName": "default", - "api-version": "2017-10-01-preview" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/databases/testdb/vulnerabilityAssessments/default", - "name": "default", - "type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments", - "properties": { - "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", - "recurringScans": { - "isEnabled": true, - "emailSubscriptionAdmins": true, - "emails": [ "email1@mail.com", "email2@mail.com" ] - } - } - } - } - } -} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/SensitivityLabelsListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/SensitivityLabelsListByDatabase.json deleted file mode 100644 index 33441c2f00c6..000000000000 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/SensitivityLabelsListByDatabase.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "myRG", - "serverName": "myServer", - "databaseName": "myDatabase", - "api-version": "2017-03-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/myServer/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/current", - "name": "current", - "type": "Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels", - "properties": { - "labelName": "Sensitive", - "informationType": "Financial" - } - }, - { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/myServer/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn2/sensitivityLabels/recommended", - "name": "recommended", - "type": "Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels", - "properties": { - "labelName": "PII", - "informationType": "Email" - } - } - ] - } - } - } -} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/SensitivityLabelsListByDatabaseWithSourceCurrent.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/SensitivityLabelsListByDatabaseWithSourceCurrent.json deleted file mode 100644 index 736a11cbc2b5..000000000000 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/SensitivityLabelsListByDatabaseWithSourceCurrent.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "myRG", - "serverName": "myServer", - "databaseName": "myDatabase", - "sensitivityLabelSource": "current", - "api-version": "2017-03-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/myServer/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn3/sensitivityLabels/current", - "name": "current", - "type": "Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels", - "properties": { - "labelName": "Sensitive", - "informationType": "Financial" - } - }, - { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/myServer/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn4/sensitivityLabels/current", - "name": "current", - "type": "Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels", - "properties": { - "labelName": "PII", - "informationType": "Email" - } - } - ] - } - } - } -} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/SensitivityLabelsListByDatabaseWithSourceRecommended.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/SensitivityLabelsListByDatabaseWithSourceRecommended.json deleted file mode 100644 index 4f8dca7041d1..000000000000 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/SensitivityLabelsListByDatabaseWithSourceRecommended.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "myRG", - "serverName": "myServer", - "databaseName": "myDatabase", - "sensitivityLabelSource": "recommended", - "api-version": "2017-03-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/myServer/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/recommended", - "name": "recommended", - "type": "Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels", - "properties": { - "labelName": "Sensitive", - "informationType": "Financial" - } - }, - { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Sql/servers/myServer/databases/myDatabase/schemas/dbo/tables/myTable/columns/myColumn2/sensitivityLabels/recommended", - "name": "recommended", - "type": "Microsoft.Sql/servers/databases/schemas/tables/columns/sensitivityLabels", - "properties": { - "labelName": "PII", - "informationType": "Email" - } - } - ] - } - } - } -} \ No newline at end of file diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/sensitivityLabels.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/sensitivityLabels.json deleted file mode 100644 index 70c05bb92c68..000000000000 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/sensitivityLabels.json +++ /dev/null @@ -1,566 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "2018-06-01-preview", - "title": "SqlManagementClient", - "description": "The Azure SQL Database management API provides a RESTful set of web APIs that interact with Azure SQL Database services to manage your databases. The API enables users to create, retrieve, update, and delete databases, servers, and other entities." - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/currentSensitivityLabels": { - "get": { - "tags": [ - "SensitivityLabels" - ], - "description": "Gets the sensitivity labels of a given database", - "operationId": "SensitivityLabels_ListCurrentByDatabase", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/ServerNameParameter" - }, - { - "$ref": "#/parameters/DatabaseNameParameter" - }, - { - "name": "$filter", - "in": "query", - "description": "An OData filter expression that filters elements in the collection.", - "required": false, - "type": "string" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved the sensitivity labels.", - "schema": { - "$ref": "#/definitions/SensitivityLabelListResult" - } - }, - "default": { - "description": "*** Error Responses: ***\n\n * 400 SensitivityLabelsInvalidODataQuery - The specified OData query is either not valid or not supported\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance." - } - }, - "x-ms-odata": "#/definitions/SensitivityLabel", - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Gets the current sensitivity labels of a given database": { - "$ref": "./examples/SensitivityLabelsListByDatabaseWithSourceCurrent.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/recommendedSensitivityLabels": { - "get": { - "tags": [ - "SensitivityLabels" - ], - "description": "Gets the sensitivity labels of a given database", - "operationId": "SensitivityLabels_ListRecommendedByDatabase", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/ServerNameParameter" - }, - { - "$ref": "#/parameters/DatabaseNameParameter" - }, - { - "name": "$filter", - "in": "query", - "description": "An OData filter expression that filters elements in the collection.", - "required": false, - "type": "string" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved the sensitivity labels.", - "schema": { - "$ref": "#/definitions/SensitivityLabelListResult" - } - }, - "default": { - "description": "*** Error Responses: ***\n\n * 400 SensitivityLabelsInvalidODataQuery - The specified OData query is either not valid or not supported\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance." - } - }, - "x-ms-odata": "#/definitions/SensitivityLabel", - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Gets the recommended sensitivity labels of a given database": { - "$ref": "./examples/SensitivityLabelsListByDatabaseWithSourceRecommended.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/sensitivityLabels": { - "get": { - "tags": [ - "SensitivityLabels" - ], - "description": "Gets the sensitivity labels of a given database", - "operationId": "SensitivityLabels_ListByDatabase", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/ServerNameParameter" - }, - { - "$ref": "#/parameters/DatabaseNameParameter" - }, - { - "name": "$filter", - "in": "query", - "description": "An OData filter expression that filters elements in the collection.", - "required": false, - "type": "string" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved the sensitivity labels.", - "schema": { - "$ref": "#/definitions/SensitivityLabelListResult" - } - }, - "default": { - "description": "*** Error Responses: ***\n\n * 400 SensitivityLabelsInvalidODataQuery - The specified OData query is either not valid or not supported\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance." - } - }, - "x-ms-odata": "#/definitions/SensitivityLabel", - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Gets the current and recommended sensitivity labels of a given database": { - "$ref": "./examples/SensitivityLabelsListByDatabase.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}/sensitivityLabels/{sensitivityLabelSource}": { - "get": { - "tags": [ - "SensitivityLabels" - ], - "description": "Gets the sensitivity label of a given column", - "operationId": "SensitivityLabels_Get", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/ServerNameParameter" - }, - { - "$ref": "#/parameters/DatabaseNameParameter" - }, - { - "name": "schemaName", - "in": "path", - "description": "The name of the schema.", - "required": true, - "type": "string" - }, - { - "name": "tableName", - "in": "path", - "description": "The name of the table.", - "required": true, - "type": "string" - }, - { - "name": "columnName", - "in": "path", - "description": "The name of the column.", - "required": true, - "type": "string" - }, - { - "name": "sensitivityLabelSource", - "in": "path", - "description": "The source of the sensitivity label.", - "required": true, - "type": "string", - "enum": [ - "current", - "recommended" - ], - "x-ms-enum": { - "name": "SensitivityLabelSource", - "modelAsString": false - } - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved the sensitivity label.", - "schema": { - "$ref": "#/definitions/SensitivityLabel" - } - }, - "default": { - "description": "*** Error Responses: ***\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\n\n * 404 SensitivityLabelsColumnNotFound - The specified schema/table/column could not be found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet" - } - }, - "x-ms-examples": { - "Gets the sensitivity label of a given column": { - "$ref": "./examples/ColumnSensitivityLabelGet.json" - } - } - }, - "put": { - "tags": [ - "SensitivityLabels" - ], - "description": "Creates or updates the sensitivity label of a given column", - "operationId": "SensitivityLabels_CreateOrUpdate", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/ServerNameParameter" - }, - { - "$ref": "#/parameters/DatabaseNameParameter" - }, - { - "name": "schemaName", - "in": "path", - "description": "The name of the schema.", - "required": true, - "type": "string" - }, - { - "name": "tableName", - "in": "path", - "description": "The name of the table.", - "required": true, - "type": "string" - }, - { - "name": "columnName", - "in": "path", - "description": "The name of the column.", - "required": true, - "type": "string" - }, - { - "name": "sensitivityLabelSource", - "in": "path", - "description": "The source of the sensitivity label.", - "required": true, - "type": "string", - "enum": [ - "current" - ], - "x-ms-enum": { - "name": "WritableSensitivityLabelSource", - "modelAsString": false - } - }, - { - "name": "parameters", - "in": "body", - "description": "The column sensitivity label resource.", - "required": true, - "schema": { - "$ref": "#/definitions/SensitivityLabel" - } - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully updated the sensitivity label.", - "schema": { - "$ref": "#/definitions/SensitivityLabel" - } - }, - "default": { - "description": "*** Error Responses: ***\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\n\n * 400 InvalidSensitivityLabelResource - The specified sensitivity label resource is not valid\n\n * 400 SensitivityLabelLabelNameAndInfoTypeNotProvided - At least one of LabelName and InformationType must be specified\n\n * 400 LabelNameTooLong - Label name cannot exceed {0} characters\n\n * 400 InformationTypeTooLong - Information type cannot exceed {0} characters\n\n * 404 SensitivityLabelsColumnNotFound - The specified schema/table/column could not be found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet" - }, - "201": { - "description": "Successfully created the sensitivity label.", - "schema": { - "$ref": "#/definitions/SensitivityLabel" - } - } - }, - "x-ms-examples": { - "Updates the sensitivity label of a given column with all parameters": { - "$ref": "./examples/ColumnSensitivityLabelCreateMax.json" - } - } - }, - "delete": { - "tags": [ - "SensitivityLabels" - ], - "description": "Deletes the sensitivity label of a given column", - "operationId": "SensitivityLabels_Delete", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/ServerNameParameter" - }, - { - "$ref": "#/parameters/DatabaseNameParameter" - }, - { - "name": "schemaName", - "in": "path", - "description": "The name of the schema.", - "required": true, - "type": "string" - }, - { - "name": "tableName", - "in": "path", - "description": "The name of the table.", - "required": true, - "type": "string" - }, - { - "name": "columnName", - "in": "path", - "description": "The name of the column.", - "required": true, - "type": "string" - }, - { - "name": "sensitivityLabelSource", - "in": "path", - "description": "The source of the sensitivity label.", - "required": true, - "type": "string", - "enum": [ - "current" - ], - "x-ms-enum": { - "name": "WritableSensitivityLabelSource", - "modelAsString": false - } - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully deleted the sensitivity label." - }, - "default": { - "description": "*** Error Responses: ***\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\n\n * 404 SensitivityLabelsColumnNotFound - The specified schema/table/column could not be found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet" - } - }, - "x-ms-examples": { - "Deletes the sensitivity label of a given column": { - "$ref": "./examples/ColumnSensitivityLabelDelete.json" - } - } - } - } - }, - "definitions": { - "SensitivityLabelProperties": { - "description": "Properties of a sensitivity label.", - "type": "object", - "properties": { - "labelName": { - "description": "The label name.", - "type": "string" - }, - "informationType": { - "description": "The information type.", - "type": "string" - } - } - }, - "SensitivityLabel": { - "description": "A sensitivity label.", - "type": "object", - "allOf": [ - { - "$ref": "../../../common/v1/types.json#/definitions/ProxyResource" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/SensitivityLabelProperties", - "description": "Resource properties.", - "x-ms-client-flatten": true - } - } - }, - "SensitivityLabelListResult": { - "description": "A list of sensitivity labels.", - "type": "object", - "properties": { - "value": { - "description": "Array of results.", - "type": "array", - "items": { - "$ref": "#/definitions/SensitivityLabel" - }, - "readOnly": true - }, - "nextLink": { - "description": "Link to retrieve next page of results.", - "type": "string", - "readOnly": true - } - } - } - }, - "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "description": "The subscription ID that identifies an Azure subscription.", - "required": true, - "type": "string", - "x-ms-parameter-location": "client" - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "description": "The API version to use for the request.", - "required": true, - "type": "string", - "x-ms-parameter-location": "client" - }, - "ResourceGroupParameter": { - "name": "resourceGroupName", - "in": "path", - "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "ServerNameParameter": { - "name": "serverName", - "in": "path", - "description": "The name of the server.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "ManagedInstanceNameParameter": { - "name": "managedInstanceName", - "in": "path", - "description": "The name of the managed instance.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "DatabaseNameParameter": { - "name": "databaseName", - "in": "path", - "description": "The name of the database.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "BlobAuditingPolicyNameParameter": { - "name": "blobAuditingPolicyName", - "in": "path", - "description": "The name of the blob auditing policy.", - "required": true, - "type": "string", - "enum": [ - "default" - ], - "x-ms-parameter-location": "method" - }, - "SqlVirtualMachineInstanceNameParameter": { - "name": "sqlVirtualMachineInstanceName", - "in": "path", - "description": "The name of the SqlVirtualMachineInstance.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "SqlVirtualMachineContainerNameParameter": { - "name": "sqlVirtualMachineContainerName", - "in": "path", - "description": "The name of the SqlVirtualMachineContainer.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "VirtualClusterNameParameter": { - "name": "virtualClusterName", - "in": "path", - "description": "The name of the virtual cluster.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - } - }, - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "description": "Azure Active Directory OAuth2 Flow", - "flow": "implicit", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - } -} \ No newline at end of file diff --git a/specification/sql/resource-manager/readme.md b/specification/sql/resource-manager/readme.md index 859bf982961a..c45c66bac682 100644 --- a/specification/sql/resource-manager/readme.md +++ b/specification/sql/resource-manager/readme.md @@ -87,6 +87,7 @@ input-file: - Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessments.json - Microsoft.Sql/preview/2017-03-01-preview/jobs.json - Microsoft.Sql/preview/2017-03-01-preview/longTermRetention.json +- Microsoft.Sql/preview/2017-03-01-preview/ManagedBackupShortTermRetention.json - Microsoft.Sql/preview/2017-03-01-preview/managedDatabases.json - Microsoft.Sql/preview/2017-03-01-preview/serverAutomaticTuning.json - Microsoft.Sql/preview/2017-03-01-preview/serverDnsAliases.json @@ -107,6 +108,8 @@ input-file: - Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceTdeCertificates.json - Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceKeys.json - Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceEncryptionProtectors.json +- Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceVulnerabilityAssessments.json +- Microsoft.Sql/preview/2018-06-01-preview/ServerVulnerabilityAssessments.json # Needed when there is more than one input file @@ -167,6 +170,7 @@ input-file: - Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessments.json - Microsoft.Sql/preview/2017-03-01-preview/jobs.json - Microsoft.Sql/preview/2017-03-01-preview/longTermRetention.json +- Microsoft.Sql/preview/2017-03-01-preview/ManagedBackupShortTermRetention.json - Microsoft.Sql/preview/2017-03-01-preview/managedDatabases.json - Microsoft.Sql/preview/2017-03-01-preview/renameDatabase.json - Microsoft.Sql/preview/2017-03-01-preview/serverAutomaticTuning.json @@ -185,6 +189,8 @@ input-file: - Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceTdeCertificates.json - Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceKeys.json - Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceEncryptionProtectors.json +- Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceVulnerabilityAssessments.json +- Microsoft.Sql/preview/2018-06-01-preview/ServerVulnerabilityAssessments.json # Needed when there is more than one input file override-info: @@ -238,6 +244,7 @@ input-file: - Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessmentBaselines.json - Microsoft.Sql/preview/2017-03-01-preview/databaseVulnerabilityAssessments.json - Microsoft.Sql/preview/2017-03-01-preview/jobs.json +- Microsoft.Sql/preview/2017-03-01-preview/ManagedBackupShortTermRetention.json - Microsoft.Sql/preview/2017-03-01-preview/managedDatabases.json - Microsoft.Sql/preview/2017-03-01-preview/renameDatabase.json - Microsoft.Sql/preview/2017-03-01-preview/serverAutomaticTuning.json @@ -256,6 +263,8 @@ input-file: - Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceTdeCertificates.json - Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceKeys.json - Microsoft.Sql/preview/2017-10-01-preview/ManagedInstanceEncryptionProtectors.json +- Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceVulnerabilityAssessments.json +- Microsoft.Sql/preview/2018-06-01-preview/ServerVulnerabilityAssessments.json # Needed when there is more than one input file override-info: @@ -310,6 +319,7 @@ input-file: - Microsoft.Sql/preview/2017-03-01-preview/cancelOperations.json - Microsoft.Sql/preview/2017-03-01-preview/dataWarehouseUserActivities.json - Microsoft.Sql/preview/2017-03-01-preview/jobs.json +- Microsoft.Sql/preview/2017-03-01-preview/ManagedBackupShortTermRetention.json - Microsoft.Sql/preview/2017-03-01-preview/managedDatabases.json - Microsoft.Sql/preview/2017-03-01-preview/renameDatabase.json - Microsoft.Sql/preview/2017-03-01-preview/serverAutomaticTuning.json @@ -398,6 +408,26 @@ override-info: The following packages are each composed of all apis from only one api-version. +### Tag: package-pure-2018-06-preview + +These settings apply only when `--tag=package-pure-2018-06-preview` is specified on the command line. + +This section contains all input swagger files for version 2018-06-01-preview. All APIs of that version must be added this section when the API is ready for production. + +APIs must only be added to this section when the API is publicly available in at least 1 production region and at least 1 generated client has been tested end-to-end. + +These can be regenerated by running the following PowerShell script from this readme file's folder: `dir .\Microsoft.Sql\preview\2018-06-01-preview\ -File | Resolve-Path -Relative | % { " - $_".Replace("\", "/") }` + +``` yaml $(tag) == 'package-pure-2018-06-preview' +input-file: + - ./Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceVulnerabilityAssessments.json + - ./Microsoft.Sql/preview/2018-06-01-preview/ServerVulnerabilityAssessments.json + +# Needed when there is more than one input file +override-info: + title: SqlManagementClient + ``` + ### Tag: package-pure-2017-10-preview These settings apply only when `--tag=package-pure-2017-10-preview` is specified on the command line. @@ -451,6 +481,7 @@ input-file: - ./Microsoft.Sql/preview/2017-03-01-preview/dataWarehouseUserActivities.json - ./Microsoft.Sql/preview/2017-03-01-preview/jobs.json - ./Microsoft.Sql/preview/2017-03-01-preview/longTermRetention.json + - ./Microsoft.Sql/preview/2017-03-01-preview/ManagedBackupShortTermRetention.json - ./Microsoft.Sql/preview/2017-03-01-preview/managedDatabases.json - ./Microsoft.Sql/preview/2017-03-01-preview/renameDatabase.json - ./Microsoft.Sql/preview/2017-03-01-preview/restorePoints.json diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateAvailabilityGroupListener.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateAvailabilityGroupListener.json new file mode 100644 index 000000000000..6b19a28e1869 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateAvailabilityGroupListener.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineGroupName": "testvmgroup", + "availabilityGroupListenerName": "agl-test", + "api-version": "2017-03-01-preview", + "parameters": { + "AvailabilityGroupName": "ag-test", + "LoadBalancerConfigurations": [ + { + "PrivateIPAddress": { + "IpAddress": "10.1.0.112", + "SubnetResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default" + }, + "LoadBalancerResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb-test", + "ProbePort": "59983", + "SqlVirtualMachineInstances": [ + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2", + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm3" + ] + } + ], + "Port": "1433" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Updating", + "loadBalancerConfigurations": [ + { + "privateIpAddress": { + "ipAddress": "10.1.0.113", + "subnetResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default" + }, + "sqlVirtualMachineInstances": [ "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2", + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm3" ] + } + ], + "port": 1433 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup/availabilityGroupListeners/agl-test", + "name": "agl-test", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/availabilityGroupListeners" + } + }, + "201": { + "body": { + "properties": { + "provisioningState": "Provisioning", + "loadBalancerConfigurations": [ + { + "privateIpAddress": { + "ipAddress": "10.1.0.112", + "subnetResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default" + }, + "sqlVirtualMachineInstances": [ "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2", + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm3" ] + } + ], + "port": 1433 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup/availabilityGroupListeners/agl-test", + "name": "agl-test", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/availabilityGroupListeners" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateSqlVirtualMachineGroup.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateSqlVirtualMachineGroup.json new file mode 100644 index 000000000000..9797079548a8 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateSqlVirtualMachineGroup.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineGroupName": "testvmgroup", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "properties": { + "SqlImageOffer": "SQL2016-WS2016", + "SqlImageSku": "Enterprise", + "WsfcDomainProfile": { + "DomainFQDN": "testdomain.com", + "OUPath": "OU=WSCluster,DC=testdomain,DC=com", + "ClusterBootstrapAccount": "testrpadmin", + "ClusterOperatorAccount": "testrp@testdomain.com", + "SqlServiceAccount": "sqlservice@testdomain.com", + "StorageAccountUrl": "https://storgact.blob.core.windows.net/", + "StorageAccountPrimaryKey": "" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "UpdatingDomainful", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup", + "name": "testvmgroup", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + } + }, + "201": { + "body": { + "properties": { + "provisioningState": "ProvisioningDomainful", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup", + "name": "testvmgroup", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateSqlVirtualMachineMAX.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateSqlVirtualMachineMAX.json new file mode 100644 index 000000000000..eb165d5d9f3b --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateSqlVirtualMachineMAX.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineName":"testvm", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "northeurope", + "properties": { + "sqlServerLicenseType": "PAYG", + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm", + "ServerConfigurationsManagementSettings": { + "SQLConnectivityUpdateSettings": { + "ConnectivityType": "Private", + "Port": 1433, + "SQLAuthUpdateUserName": "sqllogin", + "SQLAuthUpdatePassword": "" + }, + "SQLStorageUpdateSettings": { + "DiskCount": 1, + "DiskConfigurationType": "NEW" + }, + "SQLWorkloadTypeUpdateSettings": { + "SQLWorkloadType": "OLTP" + }, + "AdditionalFeaturesServerConfigurations": { + "IsRServicesEnabled": false + } + }, + "KeyVaultCredentialSettings": { + "Enable": false + }, + "AutoPatchingSettings": { + "Enable": true, + "DayOfWeek": "Sunday", + "MaintenanceWindowStartingHour": 2, + "MaintenanceWindowDuration": 60 + }, + "AutoBackupSettings": { + "Enable": true, + "RetentionPeriod": 17, + "EnableEncryption": true, + "Password": "", + "BackupScheduleType": "Manual", + "BackupSystemDbs": true, + "StorageAccountUrl": "https://teststorage.blob.core.windows.net/", + "StorageAccessKey": "", + "FullBackupFrequency": "Daily", + "FullBackupStartTime": 6, + "FullBackupWindowHours": 11, + "LogBackupFrequency": 10 + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm", + "provisioningState": "Updating", + "sqlServerLicenseType": "PAYG", + "sqlImageSku": "Enterprise" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm", + "name": "testvm", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + }, + "201": { + "body": { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm", + "provisioningState": "Provisioning", + "sqlServerLicenseType": "PAYG", + "sqlImageSku": "Unknown" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm", + "name": "testvm", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateSqlVirtualMachineMIN.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateSqlVirtualMachineMIN.json new file mode 100644 index 000000000000..b1afdafb9408 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateSqlVirtualMachineMIN.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineName": "testvm", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "northeurope", + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm", + "provisioningState": "Updating", + "sqlServerLicenseType": "PAYG", + "sqlImageSku": "Enterprise" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm", + "name": "testvm", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + }, + "201": { + "body": { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm", + "provisioningState": "Provisioning", + "sqlServerLicenseType": "PAYG", + "sqlImageSku": "Unknown" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm", + "name": "testvm", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateVirtualMachineWithVMGroup.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateVirtualMachineWithVMGroup.json new file mode 100644 index 000000000000..1d591806ded8 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/CreateOrUpdateVirtualMachineWithVMGroup.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineName": "testvm", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "northeurope", + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm2", + "SqlVirtualMachineGroupResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup", + "WsfcDomainCredentials": { + "ClusterBootstrapAccountPassword": "", + "ClusterOperatorAccountPassword": "", + "SqlServiceAccountPassword": "" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm2", + "provisioningState": "Updating", + "sqlImageSku": "Enterprise", + "sqlServerLicenseType": "PAYG", + "sqlVirtualMachineGroupResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2", + "name": "testvm2", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + }, + "201": { + "body": { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm2", + "provisioningState": "Provisioning", + "sqlImageSku": "Unknown", + "sqlServerLicenseType": "PAYG", + "sqlVirtualMachineGroupResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2", + "name": "testvm2", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + } + } +} diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/DeleteAvailabilityGroupListener.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/DeleteAvailabilityGroupListener.json new file mode 100644 index 000000000000..98d9c96eb0f2 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/DeleteAvailabilityGroupListener.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineGroupName": "testvmgroup", + "availabilityGroupListenerName": "agl-test", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/DeleteSqlVirtualMachine.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/DeleteSqlVirtualMachine.json new file mode 100644 index 000000000000..f4489c95f57e --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/DeleteSqlVirtualMachine.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineName": "testvm1", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/DeleteSqlVirtualMachineGroup.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/DeleteSqlVirtualMachineGroup.json new file mode 100644 index 000000000000..b3d3c439e4cb --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/DeleteSqlVirtualMachineGroup.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineGroupName": "testvmgroup", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/GetAvailabilityGroupListener.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/GetAvailabilityGroupListener.json new file mode 100644 index 000000000000..de85cdc4c309 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/GetAvailabilityGroupListener.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineGroupName": "testvmgroup", + "availabilityGroupListenerName": "agl-test", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "availabilityGroupName": "ag-test", + "loadBalancerConfigurations": [ + { + "privateIpAddress": { + "ipAddress": "10.1.0.112", + "subnetResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default" + }, + "loadBalancerResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb-test", + "probePort": 59983, + "sqlVirtualMachineInstances": [ "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm3", + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2" ] + } + ], + "port": 1433 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup/availabilityGroupListeners/agl-test", + "name": "agl-test", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/availabilityGroupListeners" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/GetSqlVirtualMachine.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/GetSqlVirtualMachine.json new file mode 100644 index 000000000000..36e4c9ee375f --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/GetSqlVirtualMachine.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineName": "testvm", + "api-version": "2017-03-01-preview", + "parameters": { + } + }, + "responses": { + "200": { + "body": { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm", + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "sqlServerLicenseType": "PAYG" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm", + "name": "testvm", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/GetSqlVirtualMachineGroup.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/GetSqlVirtualMachineGroup.json new file mode 100644 index 000000000000..2fc27894ba40 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/GetSqlVirtualMachineGroup.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineGroupName": "testvmgroup", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "domainFqdn": "testdomain.com", + "ouPath": "OU=WSCluster,DC=testdomain,DC=com", + "clusterBootstrapAccount": "testrpadmin", + "clusterOperatorAccount": "testrp@testdomain.com", + "sqlServiceAccount": "sqlservice@testdomain.com", + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup", + "name": "testvmgroup", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListByGroupAvailabilityGroupListener.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListByGroupAvailabilityGroupListener.json new file mode 100644 index 000000000000..b79af039a5df --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListByGroupAvailabilityGroupListener.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineGroupName": "testvmgroup", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "availabilityGroupName": "ag-test", + "loadBalancerConfigurations": [ + { + "privateIpAddress": { + "ipAddress": "10.1.0.112", + "subnetResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default" + }, + "loadBalancerResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb-test", + "probePort": 59983, + "sqlVirtualMachineInstances": [ "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm3", + "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2" ] + } + ], + "port": 1433 + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup/availabilityGroupListeners/agl-test", + "name": "agl-test", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/availabilityGroupListeners" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListByResourceGroupSqlVirtualMachine.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListByResourceGroupSqlVirtualMachine.json new file mode 100644 index 000000000000..6785d0d40347 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListByResourceGroupSqlVirtualMachine.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm", + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "sqlServerLicenseType": "PAYG" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm", + "name": "testvm", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + }, + { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm1", + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2017-WS2016", + "sqlImageSku": "Enterprise", + "sqlServerLicenseType": "PAYG" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm1", + "name": "testvm1", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListByResourceGroupSqlVirtualMachineGroup.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListByResourceGroupSqlVirtualMachineGroup.json new file mode 100644 index 000000000000..cad9a73fd09d --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListByResourceGroupSqlVirtualMachineGroup.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2017-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "domainFqdn": "testdomain.com", + "ouPath": "OU=WSCluster,DC=testdomain,DC=com", + "clusterBootstrapAccount": "testrpadmin", + "clusterOperatorAccount": "testrp@testdomain.com", + "sqlServiceAccount": "sqlservice@testdomain.com", + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup", + "name": "testvmgroup", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + }, + { + "properties": { + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "domainFqdn": "testdomain.com", + "ouPath": "OU=WSCluster,DC=testdomain,DC=com", + "clusterBootstrapAccount": "testrpadmin", + "clusterOperatorAccount": "testrp@testdomain.com", + "sqlServiceAccount": "sqlservice@testdomain.com", + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup1", + "name": "testvmgroup1", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + }, + { + "properties": { + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "domainFqdn": "testdomain.com", + "ouPath": "OU=WSCluster,DC=testdomain,DC=com", + "clusterBootstrapAccount": "testrpadmin", + "clusterOperatorAccount": "testrp@testdomain.com", + "sqlServiceAccount": "sqlservice@testdomain.com", + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/testvmgroup2", + "name": "testvmgroup2", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + } + ] + } + } + } +} diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListOperation.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListOperation.json new file mode 100644 index 000000000000..1be629af051c --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListOperation.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/read", + "display": { + "resource": "SQL VirtualMachine Group", + "operation": "Get SQL VirtualMachine Group details", + "description": "Retrives details of SQL VirtualMachine Group" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/write", + "display": { + "resource": "SQL VirtualMachine Group", + "operation": "Create a new or update existing SQL VirtualMachine Group", + "description": "Create a new or change properties of existing SQL VirtualMachine Group" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/delete", + "display": { + "resource": "SQL VirtualMachine Group", + "operation": "Delete existing SQL VirtualMachine Group", + "description": "Delete existing SQL VirtualMachine Group" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/availabilityGroupListeners/read", + "display": { + "resource": "SQL AvailabilityGroup Listener", + "operation": "Get AvailabilityGroup Listener details", + "description": "Retrieves details of SQL AvailabilityGroup Listener on a given SQL VirtualMachine Group" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/availabilityGroupListeners/write", + "display": { + "resource": "SQL AvailabilityGroup Listener", + "operation": "Create new or update exising AvailabilityGroup Listener", + "description": "Create a new or change properties of existing SQL AvailabilityGroup Listener" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/availabilityGroupListeners/delete", + "display": { + "resource": "SQL AvailabilityGroup Listener", + "operation": "Delete existing AvailabilityGroup Listener", + "description": "Delete existing AvailabilityGroup Listener" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/locations/availabilityGroupListenerOperationResults/read", + "display": { + "resource": "SQL AvailabilityGroup Listener", + "operation": "Get AvailabilityGroup Listener operation result", + "description": "Get result of an AvailabilityGroup Listener operation" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/operations/read", + "display": { + "resource": "Available REST operations" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/locations/sqlVirtualMachineGroupOperationResults/read", + "display": { + "resource": "SQL VirtualMachine Group", + "operation": "Get SQL VirtualMachine Group operation result", + "description": "Get result of a SQL VirtualMachine Group operation" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/sqlVirtualMachines/read", + "display": { + "operation": "Get SQL VirtualMachine Instance details", + "description": "Retrieves details of SQL VirtualMachine" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/sqlVirtualMachines/write", + "display": { + "operation": "Create new or update existing SQL VirtualMachine", + "description": "Create a new or change properties of existing SQL VirtualMachine" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/sqlVirtualMachines/delete", + "display": { + "operation": "Delete exisiting SQL VirtualMachine", + "description": "Delete exisiting SQL VirtualMachine" + } + }, + { + "name": "Microsoft.SqlVirtualMachine/locations/sqlVirtualMachineOperationResults/read", + "display": { + "resource": "SQL VirtualMachine", + "operation": "Get SQL VirtualMachine operation result", + "description": "Get result of SQL VirtualMachine operation" + } + } + ] + } + } + } +} diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListSubscriptionSqlVirtualMachine.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListSubscriptionSqlVirtualMachine.json new file mode 100644 index 000000000000..74eee8a07a81 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListSubscriptionSqlVirtualMachine.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm", + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "sqlServerLicenseType": "PAYG" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm", + "name": "testvm", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + }, + { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm1", + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2017-WS2016", + "sqlImageSku": "Enterprise", + "sqlServerLicenseType": "PAYG" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm1", + "name": "testvm1", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + }, + { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg1/providers/Microsoft.Compute/virtualMachines/testvm2", + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "sqlServerLicenseType": "PAYG" + }, + "location": "northeurope", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg1/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm2", + "name": "testvm2", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListSubscriptionSqlVirtualMachineGroup.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListSubscriptionSqlVirtualMachineGroup.json new file mode 100644 index 000000000000..b47490f3b56e --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/ListSubscriptionSqlVirtualMachineGroup.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2017-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2017-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "domainFqdn": "testdomain.com", + "ouPath": "OU=WSCluster,DC=testdomain,DC=com", + "clusterBootstrapAccount": "testrpadmin", + "clusterOperatorAccount": "testrp@testdomain.com", + "sqlServiceAccount": "sqlservice@testdomain.com", + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/", + "name": "testvmgroup", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + }, + { + "properties": { + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "domainFqdn": "testdomain.com", + "ouPath": "OU=WSCluster,DC=testdomain,DC=com", + "clusterBootstrapAccount": "testrpadmin", + "clusterOperatorAccount": "testrp@testdomain.com", + "sqlServiceAccount": "sqlservice@testdomain.com", + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg1/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/", + "name": "testvmgroup1", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + }, + { + "properties": { + "provisioningState": "Succeeded", + "sqlImageOffer": "SQL2016-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "domainFqdn": "testdomain.com", + "ouPath": "OU=WSCluster,DC=testdomain,DC=com", + "clusterBootstrapAccount": "testrpadmin", + "clusterOperatorAccount": "testrp@testdomain.com", + "sqlServiceAccount": "sqlservice@testdomain.com", + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg2/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/", + "name": "testvmgroup2", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + } + ] + } + } + } +} diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/UpdateSqlVirtualMachine.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/UpdateSqlVirtualMachine.json new file mode 100644 index 000000000000..8493fc02413a --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/UpdateSqlVirtualMachine.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineName": "testvm", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "northeurope", + "tags": { + "mytag": "myval" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "virtualMachineResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachines/testvm", + "provisioningState": "Updating", + "sqlServerLicenseType": "PAYG", + "sqlImageSku": "Unknown" + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm", + "name": "testvm", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachines" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/UpdateSqlVirtualMachineGroup.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/UpdateSqlVirtualMachineGroup.json new file mode 100644 index 000000000000..7808f0432f6c --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/examples/UpdateSqlVirtualMachineGroup.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testrg", + "sqlVirtualMachineGroupName": "testvmgroup", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "northeurope", + "tags": { + "mytag": "myval" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "UpdatingDomainful", + "sqlImageOffer": "SQL2017-WS2016", + "sqlImageSku": "Enterprise", + "wsfcDomainProfile": { + "storageAccountUrl": "https://storgact.blob.core.windows.net/" + } + }, + "location": "northeurope", + "tags": { + "mytag": "myval" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testrg/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/testvm", + "name": "testvmgroup", + "type": "Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/sqlvm.json b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/sqlvm.json new file mode 100644 index 000000000000..48070b1972ca --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/sqlvm.json @@ -0,0 +1,1792 @@ +{ + "swagger": "2.0", + "info": { + "version": "2017-03-01-preview", + "title": "SqlVirtualMachineManagementClient", + "description": "The SQL virtual machine management API provides a RESTful set of web APIs that interact with Azure Compute, Network & Storage services to manage your SQL Server virtual machine. The API enables users to create, delete and retrieve a SQL virtual machine, SQL virtual machine group or availability group listener." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/{sqlVirtualMachineGroupName}/availabilityGroupListeners/{availabilityGroupListenerName}": { + "get": { + "tags": [ + "AvailabilityGroupListeners" + ], + "description": "Gets an availability group listener.", + "operationId": "AvailabilityGroupListeners_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineGroupName", + "in": "path", + "description": "Name of the SQL virtual machine group.", + "required": true, + "type": "string" + }, + { + "name": "availabilityGroupListenerName", + "in": "path", + "description": "Name of the availability group listener.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the availability group listener.", + "schema": { + "$ref": "#/definitions/AvailabilityGroupListener" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 400 DifferentSubSqlVmList - All SQL virtual machines should be under same subscription.\n\n * 400 OnlyStandardPublicIp - Every virtual machine should have standard public IP.\n\n * 400 ListenerNameTooLong - Listener name should not exceed 15 characters.\n\n * 400 InvalidListenerName - Invalid listener name.\n\n * 400 InvalidLBResourceIdParameterValue - Load balancer resource id is invalid.\n\n * 400 InvalidPublicIpResourceIdParameterValue - Public IP resource id is invalid.\n\n * 400 InvalidSubnetIdParameterValue - Invalid resource id provided for subnet parameter.\n\n * 400 VmNicVnetMismatch - Virtual machine NIC VNet mismatch.\n\n * 400 InvalidPrivateIpParameterValue - Invalid address given for private IP address.\n\n * 400 NoAvailabilitySet - Vm is not associated with any availability set.\n\n * 400 AvailabilitySetMismatch - Availability set of virtual machines does not match.\n\n * 400 MismatchVmGroupSubscription - Subscription id for SQL virtual machine and SQL virtual machine group are different.\n\n * 400 AgDoesNotExist - Availability group does not exist.\n\n * 400 AgListDoesNotMatch - SQL Availability group list does not match the list of virtual machines in SQL Virtual machine group.\n\n * 400 NoIpProvided - Atleast one IP needs to be provided.\n\n * 400 MoreIpProvided - Only one IP needs to be provided.\n\n * 400 SqlVmGroupDoesNotHaveAGListener - SQL virtual machine group does not have the AG listener.\n\n * 400 AgListenerUpdateNotAllowed - Only handful properties of availability group listener can be updated.\n\n * 400 SqlVmNotInGroup - SQL virtual machine is not part of the group.\n\n * 400 SqlVmListCannotBeEmpty - SQL virtual machines list cannot be empty.\n\n * 400 PublicIpNotIPv4 - Public IP must be IPv4 address.\n\n * 400 PublicIPDynamicAllocation - Public IP allocation mode must be static\n\n * 400 PublicLBInvalid - Load balancer specified is not public.\n\n * 400 SubnetMissingFromPrivateIP - Subnet must be provided with private IP.\n\n * 400 NoIpAvailable - No available IP.\n\n * 400 IPNotInSubnet - IP not part of subnet.\n\n * 400 MultipleListenerSameAG - Multiple availability group listeners for same availability group are not allowed.\n\n * 400 AgListenerNotEmpty - Availability group listener not empty.\n\n * 400 AgListenerVnetMismatch - Provided VNet for Availability group listener does not match Vnet of internal load balancer.\n\n * 400 InternalLBInvalid - Load balancer specified is not internal.\n\n * 400 InvalidSqlVmResourceIdParameterValue - SQL virtual machine resource id provided is invalid.\n\n * 403 AccessDenied - Access denied.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - Subscription does not have SQL virtual machine group in resource group.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider.\n\n * 500 SqlVmGroupIsBusy - SQL virtual machine group is busy." + } + }, + "x-ms-examples": { + "Gets an availability group listener.": { + "$ref": "./examples/GetAvailabilityGroupListener.json" + } + } + }, + "put": { + "tags": [ + "AvailabilityGroupListeners" + ], + "description": "Creates or updates an availability group listener.", + "operationId": "AvailabilityGroupListeners_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineGroupName", + "in": "path", + "description": "Name of the SQL virtual machine group.", + "required": true, + "type": "string" + }, + { + "name": "availabilityGroupListenerName", + "in": "path", + "description": "Name of the availability group listener.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The availability group listener.", + "required": true, + "schema": { + "$ref": "#/definitions/AvailabilityGroupListener" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the availability group listener.", + "schema": { + "$ref": "#/definitions/AvailabilityGroupListener" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 400 DifferentSubSqlVmList - All SQL virtual machines should be under same subscription.\n\n * 400 OnlyStandardPublicIp - Every virtual machine should have standard public IP.\n\n * 400 ListenerNameTooLong - Listener name should not exceed 15 characters.\n\n * 400 InvalidListenerName - Invalid listener name.\n\n * 400 InvalidLBResourceIdParameterValue - Load balancer resource id is invalid.\n\n * 400 InvalidPublicIpResourceIdParameterValue - Public IP resource id is invalid.\n\n * 400 InvalidSubnetIdParameterValue - Invalid resource id provided for subnet parameter.\n\n * 400 VmNicVnetMismatch - Virtual machine NIC VNet mismatch.\n\n * 400 InvalidPrivateIpParameterValue - Invalid address given for private IP address.\n\n * 400 NoAvailabilitySet - Vm is not associated with any availability set.\n\n * 400 AvailabilitySetMismatch - Availability set of virtual machines does not match.\n\n * 400 MismatchVmGroupSubscription - Subscription id for SQL virtual machine and SQL virtual machine group are different.\n\n * 400 AgDoesNotExist - Availability group does not exist.\n\n * 400 AgListDoesNotMatch - SQL Availability group list does not match the list of virtual machines in SQL Virtual machine group.\n\n * 400 NoIpProvided - Atleast one IP needs to be provided.\n\n * 400 MoreIpProvided - Only one IP needs to be provided.\n\n * 400 SqlVmGroupDoesNotHaveAGListener - SQL virtual machine group does not have the AG listener.\n\n * 400 AgListenerUpdateNotAllowed - Only handful properties of availability group listener can be updated.\n\n * 400 SqlVmNotInGroup - SQL virtual machine is not part of the group.\n\n * 400 SqlVmListCannotBeEmpty - SQL virtual machines list cannot be empty.\n\n * 400 PublicIpNotIPv4 - Public IP must be IPv4 address.\n\n * 400 PublicIPDynamicAllocation - Public IP allocation mode must be static\n\n * 400 PublicLBInvalid - Load balancer specified is not public.\n\n * 400 SubnetMissingFromPrivateIP - Subnet must be provided with private IP.\n\n * 400 NoIpAvailable - No available IP.\n\n * 400 IPNotInSubnet - IP not part of subnet.\n\n * 400 MultipleListenerSameAG - Multiple availability group listeners for same availability group are not allowed.\n\n * 400 AgListenerNotEmpty - Availability group listener not empty.\n\n * 400 AgListenerVnetMismatch - Provided VNet for Availability group listener does not match Vnet of internal load balancer.\n\n * 400 InternalLBInvalid - Load balancer specified is not internal.\n\n * 400 InvalidSqlVmResourceIdParameterValue - SQL virtual machine resource id provided is invalid.\n\n * 403 AccessDenied - Access denied.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - Subscription does not have SQL virtual machine group in resource group.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider.\n\n * 500 SqlVmGroupIsBusy - SQL virtual machine group is busy." + }, + "201": { + "description": "Successfully created the availability group listener.", + "schema": { + "$ref": "#/definitions/AvailabilityGroupListener" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates an availability group listener.": { + "$ref": "./examples/CreateOrUpdateAvailabilityGroupListener.json" + } + } + }, + "delete": { + "tags": [ + "AvailabilityGroupListeners" + ], + "description": "Deletes an availability group listener.", + "operationId": "AvailabilityGroupListeners_Delete", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineGroupName", + "in": "path", + "description": "Name of the SQL virtual machine group.", + "required": true, + "type": "string" + }, + { + "name": "availabilityGroupListenerName", + "in": "path", + "description": "Name of the availability group listener.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the availability group listener." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 400 DifferentSubSqlVmList - All SQL virtual machines should be under same subscription.\n\n * 400 OnlyStandardPublicIp - Every virtual machine should have standard public IP.\n\n * 400 ListenerNameTooLong - Listener name should not exceed 15 characters.\n\n * 400 InvalidListenerName - Invalid listener name.\n\n * 400 InvalidLBResourceIdParameterValue - Load balancer resource id is invalid.\n\n * 400 InvalidPublicIpResourceIdParameterValue - Public IP resource id is invalid.\n\n * 400 InvalidSubnetIdParameterValue - Invalid resource id provided for subnet parameter.\n\n * 400 VmNicVnetMismatch - Virtual machine NIC VNet mismatch.\n\n * 400 InvalidPrivateIpParameterValue - Invalid address given for private IP address.\n\n * 400 NoAvailabilitySet - Vm is not associated with any availability set.\n\n * 400 AvailabilitySetMismatch - Availability set of virtual machines does not match.\n\n * 400 MismatchVmGroupSubscription - Subscription id for SQL virtual machine and SQL virtual machine group are different.\n\n * 400 AgDoesNotExist - Availability group does not exist.\n\n * 400 AgListDoesNotMatch - SQL Availability group list does not match the list of virtual machines in SQL Virtual machine group.\n\n * 400 NoIpProvided - Atleast one IP needs to be provided.\n\n * 400 MoreIpProvided - Only one IP needs to be provided.\n\n * 400 SqlVmGroupDoesNotHaveAGListener - SQL virtual machine group does not have the AG listener.\n\n * 400 AgListenerUpdateNotAllowed - Only handful properties of availability group listener can be updated.\n\n * 400 SqlVmNotInGroup - SQL virtual machine is not part of the group.\n\n * 400 SqlVmListCannotBeEmpty - SQL virtual machines list cannot be empty.\n\n * 400 PublicIpNotIPv4 - Public IP must be IPv4 address.\n\n * 400 PublicIPDynamicAllocation - Public IP allocation mode must be static\n\n * 400 PublicLBInvalid - Load balancer specified is not public.\n\n * 400 SubnetMissingFromPrivateIP - Subnet must be provided with private IP.\n\n * 400 NoIpAvailable - No available IP.\n\n * 400 IPNotInSubnet - IP not part of subnet.\n\n * 400 MultipleListenerSameAG - Multiple availability group listeners for same availability group are not allowed.\n\n * 400 AgListenerNotEmpty - Availability group listener not empty.\n\n * 400 AgListenerVnetMismatch - Provided VNet for Availability group listener does not match Vnet of internal load balancer.\n\n * 400 InternalLBInvalid - Load balancer specified is not internal.\n\n * 400 InvalidSqlVmResourceIdParameterValue - SQL virtual machine resource id provided is invalid.\n\n * 403 AccessDenied - Access denied.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - Subscription does not have SQL virtual machine group in resource group.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider.\n\n * 500 SqlVmGroupIsBusy - SQL virtual machine group is busy." + }, + "202": { + "description": "Deleting the availability group listener." + }, + "204": { + "description": "The availability group listener does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes an availability group listener.": { + "$ref": "./examples/DeleteAvailabilityGroupListener.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/{sqlVirtualMachineGroupName}/availabilityGroupListeners": { + "get": { + "tags": [ + "AvailabilityGroupListeners" + ], + "description": "Lists all availability group listeners in a SQL virtual machine group.", + "operationId": "AvailabilityGroupListeners_ListByGroup", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineGroupName", + "in": "path", + "description": "Name of the SQL virtual machine group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved all availability group listeners in a SQL virtual machine group.", + "schema": { + "$ref": "#/definitions/AvailabilityGroupListenerListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Lists all availability group listeners in a SQL virtual machine group.": { + "$ref": "./examples/ListByGroupAvailabilityGroupListener.json" + } + } + } + }, + "/providers/Microsoft.SqlVirtualMachine/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available SQL Rest API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved operations.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Lists all of the available SQL Rest API operations.": { + "$ref": "./examples/ListOperation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups/{sqlVirtualMachineGroupName}": { + "get": { + "tags": [ + "SqlVirtualMachineGroups" + ], + "description": "Gets a SQL virtual machine group.", + "operationId": "SqlVirtualMachineGroups_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineGroupName", + "in": "path", + "description": "Name of the SQL virtual machine group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the SQL virtual machine group.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachineGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 403 AccessDenied - Access denied.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider." + } + }, + "x-ms-examples": { + "Gets a SQL virtual machine group.": { + "$ref": "./examples/GetSqlVirtualMachineGroup.json" + } + } + }, + "put": { + "tags": [ + "SqlVirtualMachineGroups" + ], + "description": "Creates or updates a SQL virtual machine group.", + "operationId": "SqlVirtualMachineGroups_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineGroupName", + "in": "path", + "description": "Name of the SQL virtual machine group.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The SQL virtual machine group.", + "required": true, + "schema": { + "$ref": "#/definitions/SqlVirtualMachineGroup" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the SQL virtual machine group.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachineGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 SqlVmGroupUpdateFailVmAttached - SQL virtual machine group cannot be updated as it has attached a SQL virtual machine.\n\n * 400 InvalidSqlImageOffer - Provided SQL image offer is invalid.\n\n * 400 InvalidSqlSku - Provided SQL sku is invalid.\n\n * 400 OuPathAndDomainMismatch - OU path is not within the domain provided.\n\n * 400 InvalidAccountNameFormat - Account name format is invalid.\n\n * 400 CloudWitnessUnsupported - For Windows Server 2012R2 setup cloud witness is not allowed.\n\n * 400 FileShareWitnessDisAllowed - For Windows Server 2016 and beyond setup, file share witness is not allowed.\n\n * 400 InvalidStorageAccountUrl - Invalid storage account url.\n\n * 400 SqlVmGroupNameTooLong - SQL virtual machine group name cannot exceed 15 characters.\n\n * 400 InvalidSqlVmGroupName - Invalid SQL virtual machine group name.\n\n * 400 SqlVmGroupNotEmpty - SQL virtual machine group is not empty.\n\n * 400 SqlVmGroupUpdateNotAllowed - Update to SQL virtual machine group is not allowed.\n\n * 403 AccessDenied - Access denied.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - Subscription does not have SQL virtual machine group in resource group.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider." + }, + "201": { + "description": "Successfully created the SQL virtual machine group.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachineGroup" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates a SQL virtual machine group.": { + "$ref": "./examples/CreateOrUpdateSqlVirtualMachineGroup.json" + } + } + }, + "delete": { + "tags": [ + "SqlVirtualMachineGroups" + ], + "description": "Deletes a SQL virtual machine group.", + "operationId": "SqlVirtualMachineGroups_Delete", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineGroupName", + "in": "path", + "description": "Name of the SQL virtual machine group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the SQL virtual machine group." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 SqlVmGroupUpdateFailVmAttached - SQL virtual machine group cannot be updated as it has attached a SQL virtual machine.\n\n * 400 InvalidSqlImageOffer - Provided SQL image offer is invalid.\n\n * 400 InvalidSqlSku - Provided SQL sku is invalid.\n\n * 400 OuPathAndDomainMismatch - OU path is not within the domain provided.\n\n * 400 InvalidAccountNameFormat - Account name format is invalid.\n\n * 400 CloudWitnessUnsupported - For Windows Server 2012R2 setup cloud witness is not allowed.\n\n * 400 FileShareWitnessDisAllowed - For Windows Server 2016 and beyond setup, file share witness is not allowed.\n\n * 400 InvalidStorageAccountUrl - Invalid storage account url.\n\n * 400 SqlVmGroupNameTooLong - SQL virtual machine group name cannot exceed 15 characters.\n\n * 400 InvalidSqlVmGroupName - Invalid SQL virtual machine group name.\n\n * 400 SqlVmGroupNotEmpty - SQL virtual machine group is not empty.\n\n * 400 SqlVmGroupUpdateNotAllowed - Update to SQL virtual machine group is not allowed.\n\n * 403 AccessDenied - Access denied.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - Subscription does not have SQL virtual machine group in resource group.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider." + }, + "202": { + "description": "Deleting the SQL virtual machine group." + }, + "204": { + "description": "The specified SQL virtual machine group does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a SQL virtual machine group.": { + "$ref": "./examples/DeleteSqlVirtualMachineGroup.json" + } + } + }, + "patch": { + "tags": [ + "SqlVirtualMachineGroups" + ], + "description": "Updates SQL virtual machine group tags.", + "operationId": "SqlVirtualMachineGroups_Update", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineGroupName", + "in": "path", + "description": "Name of the SQL virtual machine group.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The SQL virtual machine group.", + "required": true, + "schema": { + "$ref": "#/definitions/SqlVirtualMachineGroupUpdate" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the SQL virtual machine group.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachineGroup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 SqlVmGroupUpdateFailVmAttached - SQL virtual machine group cannot be updated as it has attached a SQL virtual machine.\n\n * 400 InvalidSqlImageOffer - Provided SQL image offer is invalid.\n\n * 400 InvalidSqlSku - Provided SQL sku is invalid.\n\n * 400 OuPathAndDomainMismatch - OU path is not within the domain provided.\n\n * 400 InvalidAccountNameFormat - Account name format is invalid.\n\n * 400 CloudWitnessUnsupported - For Windows Server 2012R2 setup cloud witness is not allowed.\n\n * 400 FileShareWitnessDisAllowed - For Windows Server 2016 and beyond setup, file share witness is not allowed.\n\n * 400 InvalidStorageAccountUrl - Invalid storage account url.\n\n * 400 SqlVmGroupNameTooLong - SQL virtual machine group name cannot exceed 15 characters.\n\n * 400 InvalidSqlVmGroupName - Invalid SQL virtual machine group name.\n\n * 400 SqlVmGroupNotEmpty - SQL virtual machine group is not empty.\n\n * 400 SqlVmGroupUpdateNotAllowed - Update to SQL virtual machine group is not allowed.\n\n * 403 AccessDenied - Access denied.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - Subscription does not have SQL virtual machine group in resource group.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates a SQL virtual machine group tags.": { + "$ref": "./examples/UpdateSqlVirtualMachineGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups": { + "get": { + "tags": [ + "SqlVirtualMachineGroups" + ], + "description": "Gets all SQL virtual machine groups in a resource group.", + "operationId": "SqlVirtualMachineGroups_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved all SQL virtual machine groups in the resource group.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachineGroupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets all SQL virtual machine groups in a resource group.": { + "$ref": "./examples/ListByResourceGroupSqlVirtualMachineGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachineGroups": { + "get": { + "tags": [ + "SqlVirtualMachineGroups" + ], + "description": "Gets all SQL virtual machine groups in a subscription.", + "operationId": "SqlVirtualMachineGroups_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved all SQL virtual machine groups in the subscription.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachineGroupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets all SQL virtual machine groups in a subscription.": { + "$ref": "./examples/ListSubscriptionSqlVirtualMachineGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/{sqlVirtualMachineName}": { + "get": { + "tags": [ + "SqlVirtualMachines" + ], + "description": "Gets a SQL virtual machine.", + "operationId": "SqlVirtualMachines_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineName", + "in": "path", + "description": "Name of the SQL virtual machine.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "The child resources to include in the response.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the SQL virtual machine.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachine" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 403 AccessDenied - Access denied.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider." + } + }, + "x-ms-examples": { + "Gets a SQL virtual machine.": { + "$ref": "./examples/GetSqlVirtualMachine.json" + } + } + }, + "put": { + "tags": [ + "SqlVirtualMachines" + ], + "description": "Creates or updates a SQL virtual machine.", + "operationId": "SqlVirtualMachines_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineName", + "in": "path", + "description": "Name of the SQL virtual machine.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The SQL virtual machine.", + "required": true, + "schema": { + "$ref": "#/definitions/SqlVirtualMachine" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the SQL virtual machine.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachine" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidVmResourceIdChange - Virtual machine resource id property cannot be updated.\n\n * 400 SqlVmAlreadyIncludedInGroup - SQL virtual machine cannot be moved from one group to another in same operation.\n\n * 400 SqlVmCannotRemoveFromGroup - SQL virtual machine cannot be removed from group.\n\n * 400 VmLocationMismatch - VM location does not match that of SQL virtual machine.\n\n * 400 SqlSkuMismatchWithGroup - SQL kku set on the SQL virtual machine group does not match that of the SQL virtual machine.\n\n * 400 VmLoadBalancerAssociated - LB already associated with the NIC.\n\n * 400 VmInsufficientPermission - Insufficient permission to Vm.\n\n * 400 VmPublisherNotSql - Publisher of VM image is not SQLServer.\n\n * 400 SingleNicOnVmAllowed - Only Single NIC virtual machines are allowed.\n\n * 400 InvalidSqlVmGroupResourceIdParameterValue - SQL virtual machine group resource id is not in correct format.\n\n * 400 MismatchVmGroupSubscription - Subscription id for SQL virtual machine and SQL virtual machine group are different.\n\n * 400 IncompleteDomainCredentialsProperty - Incomplete input provided for domain credentials property.\n\n * 400 InvalidVmResourceIdParameterValue - Provided virtual machine resource id is not valid.\n\n * 400 MismatchInSqlVmAndVmResourceIdSubscription - Mismatch in subscription id for SQL virtual machine and virtual machine resource id property.\n\n * 400 MismatchSqlVmAndVmName - SQL virtual machine name is not same as the virtual machine name provided on VirtualMachineResourceId property.\n\n * 400 MismatchSqlVmAndVmRgName - SQL virtual machine resource group name is not same as the virtual machine resource group name provided on VirtualMachineResourceId property.\n\n * 400 SqlVersionMismatchWithGroup - SQL version mismatch with SQL virtual machine group.\n\n * 400 VmOSVersionMismatchWithGroup - OSversion mismatch with group.\n\n * 400 AutoBackupEncryptionPasswordNotSpecified - Password not provided when enabling encryption as auto backup setting.\n\n * 400 BackupScheduleTypeNotSet - Backup schedule type needs to be set.\n\n * 400 BackupStorageCredentialsNotSpecified - Backup storage credentials are not specified.\n\n * 400 KeyvaultCredentialsNotSpecified - Key vault credentials not specified.\n\n * 400 SqlCredentialsNotSpecified - SQL Server credentials are not specified.\n\n * 400 IncompleteAutoPatchingSettings - Incomplete auto patching settings specified.\n\n * 400 IncompleteAutoBackupSettings - Incomplete auto backup settings specified.\n\n * 400 IncompleteSqlStorageSettings - Incomplete SQL storage settings specified.\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 403 AccessDenied - Access denied.\n\n * 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - Subscription does not have SQL virtual machine group in resource group.\n\n * 404 SubscriptionDoesNotHaveSqlVMInResourceGroup - Subscription does not have SQL virtual machine Instance in resource group.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider." + }, + "201": { + "description": "Successfully created the SQL virtual machine.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachine" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates a SQL virtual machine with max paramenters.": { + "$ref": "./examples/CreateOrUpdateSqlVirtualMachineMAX.json" + }, + "Creates or updates a SQL virtual machine and joins it to a SQL virtual machine group.": { + "$ref": "./examples/CreateOrUpdateVirtualMachineWithVMGroup.json" + }, + "Creates or updates a SQL virtual machine with min parameters.": { + "$ref": "./examples/CreateOrUpdateSqlVirtualMachineMIN.json" + } + } + }, + "delete": { + "tags": [ + "SqlVirtualMachines" + ], + "description": "Deletes a SQL virtual machine.", + "operationId": "SqlVirtualMachines_Delete", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineName", + "in": "path", + "description": "Name of the SQL virtual machine.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the SQL virtual machine." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidVmResourceIdChange - Virtual machine resource id property cannot be updated.\n\n * 400 SqlVmAlreadyIncludedInGroup - SQL virtual machine cannot be moved from one group to another in same operation.\n\n * 400 SqlVmCannotRemoveFromGroup - SQL virtual machine cannot be removed from group.\n\n * 400 VmLocationMismatch - VM location does not match that of SQL virtual machine.\n\n * 400 SqlSkuMismatchWithGroup - SQL kku set on the SQL virtual machine group does not match that of the SQL virtual machine.\n\n * 400 VmLoadBalancerAssociated - LB already associated with the NIC.\n\n * 400 VmInsufficientPermission - Insufficient permission to Vm.\n\n * 400 VmPublisherNotSql - Publisher of VM image is not SQLServer.\n\n * 400 SingleNicOnVmAllowed - Only Single NIC virtual machines are allowed.\n\n * 400 InvalidSqlVmGroupResourceIdParameterValue - SQL virtual machine group resource id is not in correct format.\n\n * 400 MismatchVmGroupSubscription - Subscription id for SQL virtual machine and SQL virtual machine group are different.\n\n * 400 IncompleteDomainCredentialsProperty - Incomplete input provided for domain credentials property.\n\n * 400 InvalidVmResourceIdParameterValue - Provided virtual machine resource id is not valid.\n\n * 400 MismatchInSqlVmAndVmResourceIdSubscription - Mismatch in subscription id for SQL virtual machine and virtual machine resource id property.\n\n * 400 MismatchSqlVmAndVmName - SQL virtual machine name is not same as the virtual machine name provided on VirtualMachineResourceId property.\n\n * 400 MismatchSqlVmAndVmRgName - SQL virtual machine resource group name is not same as the virtual machine resource group name provided on VirtualMachineResourceId property.\n\n * 400 SqlVersionMismatchWithGroup - SQL version mismatch with SQL virtual machine group.\n\n * 400 VmOSVersionMismatchWithGroup - OSversion mismatch with group.\n\n * 400 AutoBackupEncryptionPasswordNotSpecified - Password not provided when enabling encryption as auto backup setting.\n\n * 400 BackupScheduleTypeNotSet - Backup schedule type needs to be set.\n\n * 400 BackupStorageCredentialsNotSpecified - Backup storage credentials are not specified.\n\n * 400 KeyvaultCredentialsNotSpecified - Key vault credentials not specified.\n\n * 400 SqlCredentialsNotSpecified - SQL Server credentials are not specified.\n\n * 400 IncompleteAutoPatchingSettings - Incomplete auto patching settings specified.\n\n * 400 IncompleteAutoBackupSettings - Incomplete auto backup settings specified.\n\n * 400 IncompleteSqlStorageSettings - Incomplete SQL storage settings specified.\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 403 AccessDenied - Access denied.\n\n * 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - Subscription does not have SQL virtual machine group in resource group.\n\n * 404 SubscriptionDoesNotHaveSqlVMInResourceGroup - Subscription does not have SQL virtual machine Instance in resource group.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider." + }, + "202": { + "description": "Deleting the SQL virtual machine." + }, + "204": { + "description": "The specified SQL virtual machine does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a SQL virtual machine.": { + "$ref": "./examples/DeleteSqlVirtualMachine.json" + } + } + }, + "patch": { + "tags": [ + "SqlVirtualMachines" + ], + "description": "Updates a SQL virtual machine.", + "operationId": "SqlVirtualMachines_Update", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "sqlVirtualMachineName", + "in": "path", + "description": "Name of the SQL virtual machine.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The SQL virtual machine.", + "required": true, + "schema": { + "$ref": "#/definitions/SqlVirtualMachineUpdate" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the SQL virtual machine.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachine" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidVmResourceIdChange - Virtual machine resource id property cannot be updated.\n\n * 400 SqlVmAlreadyIncludedInGroup - SQL virtual machine cannot be moved from one group to another in same operation.\n\n * 400 SqlVmCannotRemoveFromGroup - SQL virtual machine cannot be removed from group.\n\n * 400 VmLocationMismatch - VM location does not match that of SQL virtual machine.\n\n * 400 SqlSkuMismatchWithGroup - SQL kku set on the SQL virtual machine group does not match that of the SQL virtual machine.\n\n * 400 VmLoadBalancerAssociated - LB already associated with the NIC.\n\n * 400 VmInsufficientPermission - Insufficient permission to Vm.\n\n * 400 VmPublisherNotSql - Publisher of VM image is not SQLServer.\n\n * 400 SingleNicOnVmAllowed - Only Single NIC virtual machines are allowed.\n\n * 400 InvalidSqlVmGroupResourceIdParameterValue - SQL virtual machine group resource id is not in correct format.\n\n * 400 MismatchVmGroupSubscription - Subscription id for SQL virtual machine and SQL virtual machine group are different.\n\n * 400 IncompleteDomainCredentialsProperty - Incomplete input provided for domain credentials property.\n\n * 400 InvalidVmResourceIdParameterValue - Provided virtual machine resource id is not valid.\n\n * 400 MismatchInSqlVmAndVmResourceIdSubscription - Mismatch in subscription id for SQL virtual machine and virtual machine resource id property.\n\n * 400 MismatchSqlVmAndVmName - SQL virtual machine name is not same as the virtual machine name provided on VirtualMachineResourceId property.\n\n * 400 MismatchSqlVmAndVmRgName - SQL virtual machine resource group name is not same as the virtual machine resource group name provided on VirtualMachineResourceId property.\n\n * 400 SqlVersionMismatchWithGroup - SQL version mismatch with SQL virtual machine group.\n\n * 400 VmOSVersionMismatchWithGroup - OSversion mismatch with group.\n\n * 400 AutoBackupEncryptionPasswordNotSpecified - Password not provided when enabling encryption as auto backup setting.\n\n * 400 BackupScheduleTypeNotSet - Backup schedule type needs to be set.\n\n * 400 BackupStorageCredentialsNotSpecified - Backup storage credentials are not specified.\n\n * 400 KeyvaultCredentialsNotSpecified - Key vault credentials not specified.\n\n * 400 SqlCredentialsNotSpecified - SQL Server credentials are not specified.\n\n * 400 IncompleteAutoPatchingSettings - Incomplete auto patching settings specified.\n\n * 400 IncompleteAutoBackupSettings - Incomplete auto backup settings specified.\n\n * 400 IncompleteSqlStorageSettings - Incomplete SQL storage settings specified.\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 400 RPGenericUser - User Failure when calling other Resource Provider.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 ArgumentNotInRange - Argument '{0}' not in range.\n\n * 403 AccessDenied - Access denied.\n\n * 404 SubscriptionDoesNotHaveSqlVMGroupInResourceGroup - Subscription does not have SQL virtual machine group in resource group.\n\n * 404 SubscriptionDoesNotHaveSqlVMInResourceGroup - Subscription does not have SQL virtual machine Instance in resource group.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 404 OperationIdNotFound - Operation id could not be found.\n\n * 404 OperationTypeNotFound - Operation Type not found.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SqlExtnNotInstalled - SQL extension not installed.\n\n * 500 UnExpectedErrorOccured - Unexpected error occured.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 RPGenericSystem - System Failure when calling other Resource Provider." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates a SQL virtual machine tags.": { + "$ref": "./examples/UpdateSqlVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines": { + "get": { + "tags": [ + "SqlVirtualMachines" + ], + "description": "Gets all SQL virtual machines in a resource group.", + "operationId": "SqlVirtualMachines_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved all SQL virtual machines in the resource group.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachineListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets all SQL virtual machines in a resource group.": { + "$ref": "./examples/ListByResourceGroupSqlVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines": { + "get": { + "tags": [ + "SqlVirtualMachines" + ], + "description": "Gets all SQL virtual machines in a subscription.", + "operationId": "SqlVirtualMachines_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved all SQL virtual machines in the subscription.", + "schema": { + "$ref": "#/definitions/SqlVirtualMachineListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was given to parameter.\n\n * 400 InvalidCrossSubscriptionVmMove - Invalid cross subscription move of resource.\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets all SQL virtual machines in a subscription.": { + "$ref": "./examples/ListSubscriptionSqlVirtualMachine.json" + } + } + } + } + }, + "definitions": { + "AvailabilityGroupListenerProperties": { + "description": "The properties of an availability group listener.", + "type": "object", + "properties": { + "provisioningState": { + "description": "Provisioning state to track the aysnc operation status.", + "type": "string", + "readOnly": true + }, + "availabilityGroupName": { + "description": "Name of the availability group.", + "type": "string" + }, + "loadBalancerConfigurations": { + "description": "List of load balancer configurations for an availability group listener.", + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancerConfiguration" + } + }, + "createDefaultAvailabilityGroupIfNotExist": { + "description": "Create a default availability group if it does not exist.", + "type": "boolean" + }, + "port": { + "format": "int32", + "description": "Listener port.", + "type": "integer" + } + } + }, + "LoadBalancerConfiguration": { + "description": "A load balancer configuration for an availability group listener.", + "type": "object", + "properties": { + "privateIpAddress": { + "$ref": "#/definitions/PrivateIPAddress", + "description": "Private IP address." + }, + "publicIpAddressResourceId": { + "description": "Resource id of the public IP.", + "type": "string" + }, + "loadBalancerResourceId": { + "description": "Subnet used to include private IP.", + "type": "string" + }, + "probePort": { + "format": "int32", + "description": "Probe port.", + "type": "integer" + }, + "sqlVirtualMachineInstances": { + "description": "List of the SQL virtual machine instance resource id's that are enrolled into the availability group listener.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "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 + }, + "PrivateIPAddress": { + "description": "A private IP address bound to the availability group listener.", + "type": "object", + "properties": { + "ipAddress": { + "description": "Private IP address bound to the availability group listener.", + "type": "string" + }, + "subnetResourceId": { + "description": "Subnet used to include private IP.", + "type": "string" + } + } + }, + "ProxyResource": { + "description": "ARM proxy resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "AvailabilityGroupListener": { + "description": "A SQL Server availability group listener.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AvailabilityGroupListenerProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "AvailabilityGroupListenerListResult": { + "description": "A list of availability group listeners.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/AvailabilityGroupListener" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "OperationListResult": { + "description": "Result of the request to list SQL operations.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "Operation": { + "description": "SQL REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "The name of the operation being performed on this particular object.", + "type": "string", + "readOnly": true + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "description": "The localized display information for this particular operation / action.", + "readOnly": true + }, + "origin": { + "description": "The intended executor of the operation.", + "enum": [ + "user", + "system" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "OperationOrigin", + "modelAsString": true + } + }, + "properties": { + "description": "Additional descriptions for the operation.", + "type": "object", + "additionalProperties": { + "type": "object" + }, + "readOnly": true, + "x-ms-client-flatten": false + } + } + }, + "OperationDisplay": { + "description": "Display metadata associated with the operation.", + "type": "object", + "properties": { + "provider": { + "description": "The localized friendly form of the resource provider name.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "The localized friendly form of the resource type related to this action/operation.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The localized friendly name for the operation.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The localized friendly description for the operation.", + "type": "string", + "readOnly": true + } + } + }, + "SqlVirtualMachineGroupProperties": { + "description": "The properties of a SQL virtual machine group.", + "type": "object", + "properties": { + "provisioningState": { + "description": "Provisioning state to track the aysnc operation status.", + "type": "string", + "readOnly": true + }, + "sqlImageOffer": { + "description": "SQL image offer. Examples may include SQL2016-WS2016, SQL2017-WS2016.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "sqlImageSku": { + "description": "SQL image sku.", + "enum": [ + "Developer", + "Express", + "Standard", + "Enterprise", + "Web" + ], + "type": "string", + "x-ms-enum": { + "name": "SqlImageSku", + "modelAsString": true + }, + "x-ms-mutability": [ + "read", + "create" + ] + }, + "scaleType": { + "description": "Scale type.", + "enum": [ + "HA" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ScaleType", + "modelAsString": true + } + }, + "clusterManagerType": { + "description": "Type of cluster manager: Windows Server Failover Cluster (WSFC), implied by the scale type of the group and the OS type.", + "enum": [ + "WSFC" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ClusterManagerType", + "modelAsString": true + } + }, + "clusterConfiguration": { + "description": "Cluster type.", + "enum": [ + "Domainful" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ClusterConfiguration", + "modelAsString": true + } + }, + "wsfcDomainProfile": { + "$ref": "#/definitions/WsfcDomainProfile", + "description": "Cluster Active Directory domain profile.", + "x-ms-mutability": [ + "read", + "create" + ] + } + } + }, + "WsfcDomainProfile": { + "description": "Active Directory account details to operate Windows Server Failover Cluster.", + "type": "object", + "properties": { + "domainFqdn": { + "description": "Fully qualified name of the domain.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "ouPath": { + "description": "Organizational Unit path in which the nodes and cluster will be present.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "clusterBootstrapAccount": { + "description": "Account name used for creating cluster (at minimum needs permissions to 'Create Computer Objects' in domain).", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "clusterOperatorAccount": { + "description": "Account name used for operating cluster i.e. will be part of administrators group on all the participating virtual machines in the cluster.", + "type": "string", + "x-ms-mutability": [ + "update" + ] + }, + "sqlServiceAccount": { + "description": "Account name under which SQL service will run on all participating SQL virtual machines in the cluster.", + "type": "string", + "x-ms-mutability": [ + "update" + ] + }, + "fileShareWitnessPath": { + "description": "Optional path for fileshare witness.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "storageAccountUrl": { + "description": "Fully qualified ARM resource id of the witness storage account.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "storageAccountPrimaryKey": { + "description": "Primary key of the witness storage account.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + } + } + }, + "TrackedResource": { + "description": "ARM tracked top level resource.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "Resource location.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "SqlVirtualMachineGroup": { + "description": "A SQL virtual machine group.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SqlVirtualMachineGroupProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SqlVirtualMachineGroupUpdate": { + "description": "An update to a SQL virtual machine group.", + "type": "object", + "properties": { + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "SqlVirtualMachineGroupListResult": { + "description": "A list of SQL virtual machine groups.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SqlVirtualMachineGroup" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ResourceIdentity": { + "description": "Azure Active Directory identity configuration for a resource.", + "type": "object", + "properties": { + "principalId": { + "format": "uuid", + "description": "The Azure Active Directory principal id.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The identity type. Set this to 'SystemAssigned' in order to automatically create and assign an Azure Active Directory principal for the resource.", + "enum": [ + "SystemAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "tenantId": { + "format": "uuid", + "description": "The Azure Active Directory tenant id.", + "type": "string", + "readOnly": true + } + } + }, + "SqlVirtualMachineProperties": { + "description": "The SQL virtual machine properties.", + "type": "object", + "properties": { + "virtualMachineResourceId": { + "description": "ARM Resource id of underlying virtual machine created from SQL marketplace image.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "provisioningState": { + "description": "Provisioning state to track the aysnc operation status.", + "type": "string", + "readOnly": true + }, + "sqlImageOffer": { + "description": "SQL image offer. Examples include SQL2016-WS2016, SQL2017-WS2016.", + "type": "string", + "readOnly": true + }, + "sqlServerLicenseType": { + "description": "SQL Server license type.", + "enum": [ + "PAYG", + "AHUB" + ], + "type": "string", + "x-ms-enum": { + "name": "SqlServerLicenseType", + "modelAsString": true + } + }, + "sqlImageSku": { + "description": "SQL image sku.", + "enum": [ + "Developer", + "Express", + "Standard", + "Enterprise", + "Web" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SqlImageSku", + "modelAsString": true + } + }, + "sqlVirtualMachineGroupResourceId": { + "description": "ARM resource id of the SQL virtual machine group this SQL virtual machine is or will be part of.", + "type": "string", + "x-ms-mutability": [ + "update" + ] + }, + "wsfcDomainCredentials": { + "$ref": "#/definitions/WsfcDomainCredentials", + "description": "Domain credentials for setting up Windows Server Failover Cluster for SQL availability group." + }, + "autoPatchingSettings": { + "$ref": "#/definitions/AutoPatchingSettings", + "description": "Auto patching settings for applying critical security updates to SQL virtual machine." + }, + "autoBackupSettings": { + "$ref": "#/definitions/AutoBackupSettings", + "description": "Auto backup settings for SQL Server." + }, + "keyVaultCredentialSettings": { + "$ref": "#/definitions/KeyVaultCredentialSettings", + "description": "Key vault credential settings." + }, + "serverConfigurationsManagementSettings": { + "$ref": "#/definitions/ServerConfigurationsManagementSettings", + "description": "SQL Server configuration management settings." + } + } + }, + "WsfcDomainCredentials": { + "description": "Domain credentials for setting up Windows Server Failover Cluster for SQL availability group.", + "type": "object", + "properties": { + "clusterBootstrapAccountPassword": { + "description": "Cluster bootstrap account password.", + "type": "string" + }, + "clusterOperatorAccountPassword": { + "description": "Cluster operator account password.", + "type": "string" + }, + "sqlServiceAccountPassword": { + "description": "SQL service account password.", + "type": "string" + } + } + }, + "AutoPatchingSettings": { + "description": "Set a patching window during which Windows and SQL patches will be applied.", + "type": "object", + "properties": { + "enable": { + "description": "Enable or disable autopatching on SQL virtual machine.", + "type": "boolean" + }, + "dayOfWeek": { + "description": "Day of week to apply the patch on.", + "enum": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday" + ], + "type": "string", + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": false + } + }, + "maintenanceWindowStartingHour": { + "format": "int32", + "description": "Hour of the day when patching is initiated. Local VM time.", + "type": "integer" + }, + "maintenanceWindowDuration": { + "format": "int32", + "description": "Duration of patching.", + "type": "integer" + } + } + }, + "AutoBackupSettings": { + "description": "Configure backups for databases in your SQL virtual machine.", + "type": "object", + "properties": { + "enable": { + "description": "Enable or disable autobackup on SQL virtual machine.", + "type": "boolean" + }, + "enableEncryption": { + "description": "Enable or disable encryption for backup on SQL virtual machine.", + "type": "boolean" + }, + "retentionPeriod": { + "format": "int32", + "description": "Retention period of backup: 1-30 days.", + "type": "integer" + }, + "storageAccountUrl": { + "description": "Storage account url where backup will be taken to.", + "type": "string" + }, + "storageAccessKey": { + "description": "Storage account key where backup will be taken to.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "password": { + "description": "Password for encryption on backup.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "backupSystemDbs": { + "description": "Include or exclude system databases from auto backup.", + "type": "boolean" + }, + "backupScheduleType": { + "description": "Backup schedule type.", + "enum": [ + "Manual", + "Automated" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupScheduleType", + "modelAsString": true + } + }, + "fullBackupFrequency": { + "description": "Frequency of full backups. In both cases, full backups begin during the next scheduled time window.", + "enum": [ + "Daily", + "Weekly" + ], + "type": "string", + "x-ms-enum": { + "name": "FullBackupFrequencyType", + "modelAsString": true + } + }, + "fullBackupStartTime": { + "format": "int32", + "description": "Start time of a given day during which full backups can take place. 0-23 hours.", + "type": "integer" + }, + "fullBackupWindowHours": { + "format": "int32", + "description": "Duration of the time window of a given day during which full backups can take place. 1-23 hours.", + "type": "integer" + }, + "logBackupFrequency": { + "format": "int32", + "description": "Frequency of log backups. 5-60 minutes.", + "type": "integer" + } + } + }, + "KeyVaultCredentialSettings": { + "description": "Configure your SQL virtual machine to be able to connect to the Azure Key Vault service.", + "type": "object", + "properties": { + "enable": { + "description": "Enable or disable key vault credential setting.", + "type": "boolean" + }, + "credentialName": { + "description": "Credential name.", + "type": "string" + }, + "azureKeyVaultUrl": { + "description": "Azure Key Vault url.", + "type": "string" + }, + "servicePrincipalName": { + "description": "Service principal name to access key vault.", + "type": "string" + }, + "servicePrincipalSecret": { + "description": "Service principal name secret to access key vault.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + } + } + }, + "ServerConfigurationsManagementSettings": { + "description": "Set the connectivity, storage and workload settings.", + "type": "object", + "properties": { + "sqlConnectivityUpdateSettings": { + "$ref": "#/definitions/SqlConnectivityUpdateSettings", + "description": "SQL connectivity type settings." + }, + "sqlWorkloadTypeUpdateSettings": { + "$ref": "#/definitions/SqlWorkloadTypeUpdateSettings", + "description": "SQL workload type settings." + }, + "sqlStorageUpdateSettings": { + "$ref": "#/definitions/SqlStorageUpdateSettings", + "description": "SQL storage update settings." + }, + "additionalFeaturesServerConfigurations": { + "$ref": "#/definitions/AdditionalFeaturesServerConfigurations", + "description": "Additional SQL feature settings." + } + } + }, + "SqlConnectivityUpdateSettings": { + "description": "Set the access level and network port settings for SQL Server.", + "type": "object", + "properties": { + "connectivityType": { + "description": "SQL Server connectivity option.", + "enum": [ + "LOCAL", + "PRIVATE", + "PUBLIC" + ], + "type": "string", + "x-ms-enum": { + "name": "ConnectivityType", + "modelAsString": true + } + }, + "port": { + "format": "int32", + "description": "SQL Server port.", + "type": "integer" + }, + "sqlAuthUpdateUserName": { + "description": "SQL Server sysadmin login to create.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + }, + "sqlAuthUpdatePassword": { + "description": "SQL Server sysadmin login password.", + "type": "string", + "x-ms-mutability": [ + "create" + ] + } + } + }, + "SqlWorkloadTypeUpdateSettings": { + "description": "Set workload type to optimize storage for SQL Server.", + "type": "object", + "properties": { + "sqlWorkloadType": { + "description": "SQL Server workload type.", + "enum": [ + "GENERAL", + "OLTP", + "DW" + ], + "type": "string", + "x-ms-enum": { + "name": "SqlWorkloadType", + "modelAsString": true + }, + "x-ms-mutability": [ + "read", + "create" + ] + } + } + }, + "SqlStorageUpdateSettings": { + "description": "Set disk storage settings for SQL Server.", + "type": "object", + "properties": { + "diskCount": { + "format": "int32", + "description": "Virtual machine disk count.", + "type": "integer" + }, + "diskConfigurationType": { + "description": "Disk configuration to apply to SQL Server.", + "enum": [ + "NEW", + "EXTEND", + "ADD" + ], + "type": "string", + "x-ms-enum": { + "name": "DiskConfigurationType", + "modelAsString": true + } + } + } + }, + "AdditionalFeaturesServerConfigurations": { + "description": "Additional SQL Server feature settings.", + "type": "object", + "properties": { + "isRServicesEnabled": { + "description": "Enable or disable R services (SQL 2016 onwards).", + "type": "boolean" + }, + "backupPermissionsForAzureBackupSvc": { + "description": "Enable or disable Azure Backup service.", + "type": "boolean" + } + } + }, + "SqlVirtualMachine": { + "description": "A SQL virtual machine.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "Azure Active Directory identity of the server.", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "properties": { + "$ref": "#/definitions/SqlVirtualMachineProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SqlVirtualMachineUpdate": { + "description": "An update to a SQL virtual machine.", + "type": "object", + "properties": { + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "SqlVirtualMachineListResult": { + "description": "A list of SQL virtual machines.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SqlVirtualMachine" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Subscription ID that identifies an Azure subscription.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API version to use for the request.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineNameParameter": { + "name": "sqlVirtualMachineName", + "in": "path", + "description": "Name of the SQL virtual machine.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SqlVirtualMachineGroupNameParameter": { + "name": "sqlVirtualMachineGroupNameParameter", + "in": "path", + "description": "Name of the SQL virtual machine group.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AvailabilityGroupListenerNameParameter": { + "name": "availabilityGroupListenerNameParameter", + "in": "path", + "description": "Name of the availability group listener.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} \ No newline at end of file diff --git a/specification/sqlvirtualmachine/resource-manager/readme.go.md b/specification/sqlvirtualmachine/resource-manager/readme.go.md new file mode 100644 index 000000000000..852c633218e8 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/readme.go.md @@ -0,0 +1,26 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +``` yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + namespace: sqlvirtualmachine + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2017-03-01-preview +``` + +### Tag: package-2017-03-01-preview and go + +These settings apply only when `--tag=package-2017-03-01-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2017-03-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2017-03-01-preview/$(namespace) +``` diff --git a/specification/sqlvirtualmachine/resource-manager/readme.md b/specification/sqlvirtualmachine/resource-manager/readme.md new file mode 100644 index 000000000000..e12a0c8486b6 --- /dev/null +++ b/specification/sqlvirtualmachine/resource-manager/readme.md @@ -0,0 +1,106 @@ +# SQL virtual machine + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for SQL virtual machine. + + + +--- +## Getting Started +To build the SDK for SQL virtual machine, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` +--- + +## Configuration + + + +### Basic Information +These are the global settings for the SQL virtual machine API. + +``` yaml +title: SqlVirtualMachineManagementClient +description: The SQL virtual machine management API provides a RESTful set of web APIs that interact with Azure Compute, Network & Storage services to manage your SQL Server virtual machine. The API enables users to create, delete and retrieve a SQL virtual machine, SQL virtual machine group or availability group listener. +openapi-type: arm +tag: package-2017-03-01-preview +``` + +### Tag: package-2017-03-01-preview + +These settings apply only when `--tag=package-2017-03-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2017-03-01-preview' +input-file: +- Microsoft.SqlVirtualMachine/preview/2017-03-01-preview/sqlvm.json +``` + + +--- +# Code Generation + + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-python + - repo: azure-sdk-for-go +``` + + +### C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +``` yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Microsoft.Azure.Management.SqlVirtualMachine + output-folder: $(csharp-sdks-folder)/SqlVirtualMachine/Management.SqlVirtualMachine/Generated + clear-output-folder: true +``` + + +### Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. +Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. + +``` yaml $(python) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.sqlvirtualmachine + package-name: azure-mgmt-sqlvirtualmachine + clear-output-folder: true +``` + +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/azure-mgmt-sqlvirtualmachine/azure/mgmt/sqlvirtualmachine +``` + +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/azure-mgmt-sqlvirtualmachine +``` + +### Go + +See configuration in [readme.go.md](./readme.go.md) diff --git a/specification/storage/resource-manager/Microsoft.Storage/preview/2018-03-01-preview/blob.json b/specification/storage/resource-manager/Microsoft.Storage/preview/2018-03-01-preview/blob.json index d8530e57e160..a60b0a7b8de0 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/preview/2018-03-01-preview/blob.json +++ b/specification/storage/resource-manager/Microsoft.Storage/preview/2018-03-01-preview/blob.json @@ -572,7 +572,7 @@ "schema": { "$ref": "#/definitions/ImmutabilityPolicy" }, - "description": "The ImmutabilityPolicy Properties that will be extented for a blob container." + "description": "The ImmutabilityPolicy Properties that will be extended for a blob container." }, { "name": "If-Match", diff --git a/specification/storage/resource-manager/Microsoft.Storage/preview/2018-03-01-preview/storage.json b/specification/storage/resource-manager/Microsoft.Storage/preview/2018-03-01-preview/storage.json index ae5074c69117..3ce80811b1c1 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/preview/2018-03-01-preview/storage.json +++ b/specification/storage/resource-manager/Microsoft.Storage/preview/2018-03-01-preview/storage.json @@ -826,7 +826,7 @@ } }, "Dimension": { - "description": "Dimension of blobs, possiblly be blob type or access tier.", + "description": "Dimension of blobs, possibly be blob type or access tier.", "properties": { "name": { "type": "string", @@ -860,7 +860,7 @@ "name", "type" ], - "description": "The parameters used to check the availabity of the storage account name." + "description": "The parameters used to check the availability of the storage account name." }, "SKUCapability": { "properties": { @@ -1615,7 +1615,7 @@ "properties": { "keyName": { "type": "string", - "description": "The name of storage keys that want to be regenerated, possible vaules are key1, key2." + "description": "The name of storage keys that want to be regenerated, possible values are key1, key2." } }, "required": [ @@ -1995,14 +1995,14 @@ "required": [ "canonicalizedResource" ], - "description": "The parameters to list service SAS credentials of a speicific resource." + "description": "The parameters to list service SAS credentials of a specific resource." }, "ListServiceSasResponse": { "properties": { "serviceSasToken": { "readOnly": true, "type": "string", - "description": "List service SAS credentials of speicific resource." + "description": "List service SAS credentials of specific resource." } }, "description": "The List service SAS credentials operation response." diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2016-01-01/storage.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2016-01-01/storage.json index 500465a299b3..ac6c9b6c3f51 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2016-01-01/storage.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2016-01-01/storage.json @@ -403,7 +403,7 @@ ], "responses": { "200": { - "description": "OK -- current usage acount and limit retrieved and returned successfully.", + "description": "OK -- current usage account and limit retrieved and returned successfully.", "schema": { "$ref": "#/definitions/UsageListResult" } diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2016-05-01/storage.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2016-05-01/storage.json index 388cf406fa9c..28e55b03abcc 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2016-05-01/storage.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2016-05-01/storage.json @@ -374,7 +374,7 @@ ], "responses": { "200": { - "description": "OK -- current usage acount and limit retrieved and returned successfully.", + "description": "OK -- current usage account and limit retrieved and returned successfully.", "schema": { "$ref": "#/definitions/UsageListResult" } @@ -493,7 +493,7 @@ "name", "type" ], - "description": "The parameters used to check the availabity of the storage account name." + "description": "The parameters used to check the availability of the storage account name." }, "CheckNameAvailabilityResult": { "properties": { @@ -1258,14 +1258,14 @@ "canonicalizedResource", "signedResource" ], - "description": "The parameters to list service SAS credentials of a speicific resource." + "description": "The parameters to list service SAS credentials of a specific resource." }, "ListServiceSasResponse": { "properties": { "serviceSasToken": { "readOnly": true, "type": "string", - "description": "List service SAS credentials of speicific resource." + "description": "List service SAS credentials of specific resource." } }, "description": "The List service SAS credentials operation response." diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2016-12-01/storage.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2016-12-01/storage.json index 4783bae5e841..5136a94d8d19 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2016-12-01/storage.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2016-12-01/storage.json @@ -377,7 +377,7 @@ ], "responses": { "200": { - "description": "OK -- current usage acount and limit retrieved and returned successfully.", + "description": "OK -- current usage account and limit retrieved and returned successfully.", "schema": { "$ref": "#/definitions/UsageListResult" } @@ -496,7 +496,7 @@ "name", "type" ], - "description": "The parameters used to check the availabity of the storage account name." + "description": "The parameters used to check the availability of the storage account name." }, "CheckNameAvailabilityResult": { "properties": { @@ -1293,14 +1293,14 @@ "canonicalizedResource", "signedResource" ], - "description": "The parameters to list service SAS credentials of a speicific resource." + "description": "The parameters to list service SAS credentials of a specific resource." }, "ListServiceSasResponse": { "properties": { "serviceSasToken": { "readOnly": true, "type": "string", - "description": "List service SAS credentials of speicific resource." + "description": "List service SAS credentials of specific resource." } }, "description": "The List service SAS credentials operation response." diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2017-06-01/storage.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2017-06-01/storage.json index 4aff811869b4..39f5e052379e 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2017-06-01/storage.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2017-06-01/storage.json @@ -466,7 +466,7 @@ ], "responses": { "200": { - "description": "OK -- current usage acount and limit retrieved and returned successfully.", + "description": "OK -- current usage account and limit retrieved and returned successfully.", "schema": { "$ref": "#/definitions/UsageListResult" } @@ -697,7 +697,7 @@ } }, "Dimension": { - "description": "Dimension of blobs, possiblly be blob type or access tier.", + "description": "Dimension of blobs, possibly be blob type or access tier.", "properties": { "name" : { "type" : "string", @@ -729,7 +729,7 @@ "name", "type" ], - "description": "The parameters used to check the availabity of the storage account name." + "description": "The parameters used to check the availability of the storage account name." }, "SKUCapability": { "properties": { @@ -1455,7 +1455,7 @@ "properties": { "keyName": { "type": "string", - "description": "The name of storage keys that want to be regenerated, possible vaules are key1, key2." + "description": "The name of storage keys that want to be regenerated, possible values are key1, key2." } }, "required": [ @@ -1855,14 +1855,14 @@ "canonicalizedResource", "signedResource" ], - "description": "The parameters to list service SAS credentials of a speicific resource." + "description": "The parameters to list service SAS credentials of a specific resource." }, "ListServiceSasResponse": { "properties": { "serviceSasToken": { "readOnly": true, "type": "string", - "description": "List service SAS credentials of speicific resource." + "description": "List service SAS credentials of specific resource." } }, "description": "The List service SAS credentials operation response." diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2017-10-01/storage.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2017-10-01/storage.json index b6bd1c211298..31ea509e580e 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2017-10-01/storage.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2017-10-01/storage.json @@ -466,7 +466,7 @@ ], "responses": { "200": { - "description": "OK -- current usage acount and limit retrieved and returned successfully.", + "description": "OK -- current usage account and limit retrieved and returned successfully.", "schema": { "$ref": "#/definitions/UsageListResult" } @@ -697,7 +697,7 @@ } }, "Dimension": { - "description": "Dimension of blobs, possiblly be blob type or access tier.", + "description": "Dimension of blobs, possibly be blob type or access tier.", "properties": { "name" : { "type" : "string", @@ -729,7 +729,7 @@ "name", "type" ], - "description": "The parameters used to check the availabity of the storage account name." + "description": "The parameters used to check the availability of the storage account name." }, "SKUCapability": { "properties": { @@ -1458,7 +1458,7 @@ "properties": { "keyName": { "type": "string", - "description": "The name of storage keys that want to be regenerated, possible vaules are key1, key2." + "description": "The name of storage keys that want to be regenerated, possible values are key1, key2." } }, "required": [ @@ -1871,14 +1871,14 @@ "canonicalizedResource", "signedResource" ], - "description": "The parameters to list service SAS credentials of a speicific resource." + "description": "The parameters to list service SAS credentials of a specific resource." }, "ListServiceSasResponse": { "properties": { "serviceSasToken": { "readOnly": true, "type": "string", - "description": "List service SAS credentials of speicific resource." + "description": "List service SAS credentials of specific resource." } }, "description": "The List service SAS credentials operation response." diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2018-02-01/blob.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2018-02-01/blob.json index d86326d7c69e..3fb66dadbdc7 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2018-02-01/blob.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2018-02-01/blob.json @@ -572,7 +572,7 @@ "schema": { "$ref": "#/definitions/ImmutabilityPolicy" }, - "description": "The ImmutabilityPolicy Properties that will be extented for a blob container." + "description": "The ImmutabilityPolicy Properties that will be extended for a blob container." }, { "name": "If-Match", diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2018-02-01/storage.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2018-02-01/storage.json index ee943493b118..2b659b3a8b04 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2018-02-01/storage.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2018-02-01/storage.json @@ -758,7 +758,7 @@ } }, "Dimension": { - "description": "Dimension of blobs, possiblly be blob type or access tier.", + "description": "Dimension of blobs, possibly be blob type or access tier.", "properties": { "name": { "type": "string", @@ -792,7 +792,7 @@ "name", "type" ], - "description": "The parameters used to check the availabity of the storage account name." + "description": "The parameters used to check the availability of the storage account name." }, "SKUCapability": { "properties": { @@ -1547,7 +1547,7 @@ "properties": { "keyName": { "type": "string", - "description": "The name of storage keys that want to be regenerated, possible vaules are key1, key2." + "description": "The name of storage keys that want to be regenerated, possible values are key1, key2." } }, "required": [ @@ -1927,14 +1927,14 @@ "required": [ "canonicalizedResource" ], - "description": "The parameters to list service SAS credentials of a speicific resource." + "description": "The parameters to list service SAS credentials of a specific resource." }, "ListServiceSasResponse": { "properties": { "serviceSasToken": { "readOnly": true, "type": "string", - "description": "List service SAS credentials of speicific resource." + "description": "List service SAS credentials of specific resource." } }, "description": "The List service SAS credentials operation response." diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2018-07-01/blob.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2018-07-01/blob.json index 1881958020ee..ad6bdfecb437 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2018-07-01/blob.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2018-07-01/blob.json @@ -657,7 +657,7 @@ "schema": { "$ref": "#/definitions/ImmutabilityPolicy" }, - "description": "The ImmutabilityPolicy Properties that will be extented for a blob container." + "description": "The ImmutabilityPolicy Properties that will be extended for a blob container." }, { "name": "If-Match", diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2018-07-01/examples/StorageAccountFailover.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2018-07-01/examples/StorageAccountFailover.json new file mode 100644 index 000000000000..9f19caf35b0f --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2018-07-01/examples/StorageAccountFailover.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res4228", + "accountName": "sto2434", + "api-version": "2018-07-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": "" + }, + "202": { + "body": "" + } + } +} \ No newline at end of file diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2018-07-01/examples/StorageAccountGetProperties.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2018-07-01/examples/StorageAccountGetProperties.json index 5211dc5949db..5a90b4563f5e 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2018-07-01/examples/StorageAccountGetProperties.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2018-07-01/examples/StorageAccountGetProperties.json @@ -14,6 +14,11 @@ "location": "eastus2(stage)", "name": "sto8596", "properties": { + "geoReplicationStats": { + "status": "Live", + "lastSyncTime": "2018-10-30T00:25:34Z", + "canFailover": true + }, "isHnsEnabled": true, "azureFilesAadIntegration": true, "creationTime": "2017-06-01T02:42:41.7633306Z", diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2018-07-01/storage.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2018-07-01/storage.json index 2d03c84eccd4..d88fa4a18d29 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2018-07-01/storage.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2018-07-01/storage.json @@ -223,6 +223,20 @@ }, { "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "description": "May be used to expand the properties within account's properties. By default, data is not included when fetching properties. Currently we only support geoReplicationStats.", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "geoReplicationStats" + ], + "x-ms-enum": { + "name": "StorageAccountExpand", + "modelAsString": false + } } ], "responses": { @@ -555,6 +569,46 @@ } } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/failover": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_Failover", + "description": "Failover request can be triggered for a storage account in case of availability issues. The failover occurs from the storage account's primary cluster to secondary cluster for RA-GRS accounts. The secondary cluster will become primary after failover.", + "x-ms-examples": { + "StorageAccountCreate": { + "$ref": "./examples/StorageAccountFailover.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Returned when the storage account failover is completed, and the secondary cluster has become primary." + }, + "202": { + "description": "Accepted -- Failover request accepted; operation will complete asynchronously." + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } } }, "definitions": { @@ -677,7 +731,7 @@ } }, "Dimension": { - "description": "Dimension of blobs, possiblly be blob type or access tier.", + "description": "Dimension of blobs, possibly be blob type or access tier.", "properties": { "name": { "type": "string", @@ -711,14 +765,14 @@ "name", "type" ], - "description": "The parameters used to check the availabity of the storage account name." + "description": "The parameters used to check the availability of the storage account name." }, "SKUCapability": { "properties": { "name": { "readOnly": true, "type": "string", - "description": "The name of capability, The capability information in the specified sku, including file encryption, network acls, change notification, etc." + "description": "The name of capability, The capability information in the specified SKU, including file encryption, network ACLs, change notification, etc." }, "value": { "readOnly": true, @@ -726,7 +780,7 @@ "description": "A string value to indicate states of given capability. Possibly 'true' or 'false'." } }, - "description": "The capability information in the specified sku, including file encryption, network acls, change notification, etc." + "description": "The capability information in the specified SKU, including file encryption, network ACLs, change notification, etc." }, "Restriction": { "properties": { @@ -803,7 +857,7 @@ "properties": { "name": { "type": "string", - "description": "Gets or sets the sku name. Required for account creation; optional for update. Note that in older versions, sku name was called accountType.", + "description": "Gets or sets the SKU name. Required for account creation; optional for update. Note that in older versions, SKU name was called accountType.", "enum": [ "Standard_LRS", "Standard_GRS", @@ -820,7 +874,7 @@ "tier": { "readOnly": true, "type": "string", - "description": "Gets the sku tier. This is based on the SKU name.", + "description": "Gets the SKU tier. This is based on the SKU name.", "enum": [ "Standard", "Premium" @@ -865,7 +919,7 @@ "items": { "$ref": "#/definitions/SKUCapability" }, - "description": "The capability information in the specified sku, including file encryption, network acls, change notification, etc." + "description": "The capability information in the specified SKU, including file encryption, network ACLs, change notification, etc." }, "restrictions": { "type": "array", @@ -1180,7 +1234,7 @@ "properties": { "sku": { "$ref": "#/definitions/Sku", - "description": "Required. Gets or sets the sku name." + "description": "Required. Gets or sets the SKU name." }, "kind": { "type": "string", @@ -1260,6 +1314,36 @@ }, "description": "The URIs that are used to perform a retrieval of a public blob, queue, table, web or dfs object." }, + "GeoReplicationStats": { + "properties": { + "status": { + "readOnly": true, + "type": "string", + "description": "The status of the secondary location. Possible values are: - Live: Indicates that the secondary location is active and operational. - Bootstrap: Indicates initial synchronization from the primary location to the secondary location is in progress.This typically occurs when replication is first enabled. - Unavailable: Indicates that the secondary location is temporarily unavailable.", + "enum": [ + "Live", + "Bootstrap", + "Unavailable" + ], + "x-ms-enum": { + "name": "GeoReplicationStatus", + "modelAsString": true + } + }, + "lastSyncTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "All primary writes preceding this UTC date/time value are guaranteed to be available for read operations. Primary writes following this point in time may or may not be available for reads. Element may be default value if value of LastSyncTime is not available, this can happen if secondary is offline or we are in bootstrap." + }, + "canFailover": { + "readOnly": true, + "type": "boolean", + "description": "A boolean flag which indicates whether or not account failover is supported for the account." + } + }, + "description": "Statistics related to replication for storage account's Blob, Table, Queue and File services. It is only available when geo-redundant replication is enabled for the storage account." + }, "StorageAccountProperties": { "properties": { "provisioningState": { @@ -1377,6 +1461,18 @@ "type": "boolean", "x-ms-client-name": "IsHnsEnabled", "description": "Account HierarchicalNamespace enabled if sets to true." + }, + "geoReplicationStats": { + "$ref": "#/definitions/GeoReplicationStats", + "x-ms-client-name": "GeoReplicationStats", + "description": "Geo Replication Stats", + "readOnly": true + }, + "failoverInProgress": { + "type": "boolean", + "x-ms-client-name": "FailoverInProgress", + "description": "If the failover is in progress, the value will be true, otherwise, it will be null.", + "readOnly": true } }, "description": "Properties of the storage account." @@ -1479,7 +1575,7 @@ "properties": { "keyName": { "type": "string", - "description": "The name of storage keys that want to be regenerated, possible vaules are key1, key2." + "description": "The name of storage keys that want to be regenerated, possible values are key1, key2." } }, "required": [ @@ -1531,7 +1627,7 @@ "properties": { "sku": { "$ref": "#/definitions/Sku", - "description": "Gets or sets the SKU name. Note that the SKU name cannot be updated to Standard_ZRS, Premium_LRS or Premium_ZRS, nor can accounts of those sku names be updated to any other value." + "description": "Gets or sets the SKU name. Note that the SKU name cannot be updated to Standard_ZRS, Premium_LRS or Premium_ZRS, nor can accounts of those SKU names be updated to any other value." }, "tags": { "type": "object", @@ -1865,14 +1961,14 @@ "required": [ "canonicalizedResource" ], - "description": "The parameters to list service SAS credentials of a speicific resource." + "description": "The parameters to list service SAS credentials of a specific resource." }, "ListServiceSasResponse": { "properties": { "serviceSasToken": { "readOnly": true, "type": "string", - "description": "List service SAS credentials of speicific resource." + "description": "List service SAS credentials of specific resource." } }, "description": "The List service SAS credentials operation response." diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_Create.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_Create.json index a590250f4ea0..ee40a99d1ced 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_Create.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_Create.json @@ -5,13 +5,13 @@ "storageSyncServiceName": "SampleStorageSyncService_1", "syncGroupName": "SampleSyncGroup_1", "cloudEndpointName": "SampleCloudEndpoint_1", - "api-version": "2018-07-01", + "api-version": "2018-10-01", "parameters": { "properties": { - "provisioningState": "Created", "storageAccountResourceId": "/subscriptions/744f4d70-6d17-4921-8970-a765d14f763f/resourceGroups/tminienv59svc/providers/Microsoft.Storage/storageAccounts/tminienv59storage", "storageAccountShareName": "cvcloud-afscv-0719-058-a94a1354-a1fd-4e9a-9a50-919fad8c4ba4", - "storageAccountTenantId": "\"72f988bf-86f1-41af-91ab-2d7cd011db47\"" + "storageAccountTenantId": "\"72f988bf-86f1-41af-91ab-2d7cd011db47\"", + "friendlyName": "ankushbsubscriptionmgmtmab" }, "type": "Microsoft.StorageSync/storageSyncServices/syncGroups/cloudEndpoints" } @@ -25,27 +25,28 @@ "body": { "name": "SampleCloudEndpoint_1", "properties": { + "backupEnabled" : "false", "provisioningState": "Succeeded", "storageAccountResourceId": "/subscriptions/744f4d70-6d17-4921-8970-a765d14f763f/resourceGroups/tminienv59svc/providers/Microsoft.Storage/storageAccounts/tminienv59storage", "storageAccountShareName": "cvcloud-afscv-0719-058-a94a1354-a1fd-4e9a-9a50-919fad8c4ba4", "storageAccountTenantId": "\"72f988bf-86f1-41af-91ab-2d7cd011db47\"", "friendlyName": "ankushbsubscriptionmgmtmab", - "lastWorkflowId": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/10.91.86.47/storageSyncServices/SampleStorageSyncService_1/workflows/6fe524cf-5944-4e87-816f-e4a85a1f3533", + "lastWorkflowId": "storageSyncServices/GATest/workflows/24ba0c4a-348e-419b-8f7a-091d0d9f07a4", "partnershipId": "1|U0VSVkVSQVNTWU5DQ0xJRU5USEZTVjJ8RjhDODcwQTItMkFGNi00NDUyLTgzMDgtRjJCQTZEQjI3RkEwfEdFTkVSSUN8NTJCOERBMkYtNjFFMC00QTFGLThEREUtMzM2OTExRjM2N0ZC", "lastOperationName": "ICreateCloudEndpointWorkflow" }, - "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/10.91.86.47/storageSyncServices/SampleStorageSyncService_1/syncGroups/SampleSyncGroup_1/cloudEndpoints/SampleCloudEndpoint_1", - "type": "10.91.86.47/storageSyncServices/syncGroups/cloudEndpoints" + "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SampleSyncGroup_1/cloudEndpoints/SampleCloudEndpoint_1", + "type": "Microsoft.StorageSync/storageSyncServices/syncGroups/cloudEndpoints" } }, "202": { "headers": { - "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncservice_1/workflows/c1d54be7-4738-4898-8212-cc36774314f8/operations/7ce689b2-0eca-48f5-86f0-0b8d6ceef14a?api-version=2018-07-01", - "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncservice_1/workflows/c1d54be7-4738-4898-8212-cc36774314f8/operationresults/7ce689b2-0eca-48f5-86f0-0b8d6ceef14a?api-version=2018-07-01", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncservice_1/workflows/c1d54be7-4738-4898-8212-cc36774314f8/operations/7ce689b2-0eca-48f5-86f0-0b8d6ceef14a?api-version=2018-10-01", + "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncservice_1/workflows/c1d54be7-4738-4898-8212-cc36774314f8/operationresults/7ce689b2-0eca-48f5-86f0-0b8d6ceef14a?api-version=2018-10-01", "Retry-After": "10", "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" } } } -} +} \ No newline at end of file diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_Delete.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_Delete.json index 69f04db152a7..d8108a1e2628 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_Delete.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_Delete.json @@ -5,19 +5,19 @@ "storageSyncServiceName": "SampleStorageSyncService_1", "syncGroupName": "SampleSyncGroup_1", "cloudEndpointName": "SampleCloudEndpoint_1", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { - "200": { + "200": { "headers": { "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" } }, - "202": { + "202": { "headers": { - "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/78a71465-77ef-4509-a026-2c0cd8b30208/operations/2d7f573a-7acd-4a3c-9425-fed7d029c69d?api-version=2018-07-01", - "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/78a71465-77ef-4509-a026-2c0cd8b30208/operationresults/2d7f573a-7acd-4a3c-9425-fed7d029c69d?api-version=2018-07-01", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/78a71465-77ef-4509-a026-2c0cd8b30208/operations/2d7f573a-7acd-4a3c-9425-fed7d029c69d?api-version=2018-10-01", + "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/78a71465-77ef-4509-a026-2c0cd8b30208/operationresults/2d7f573a-7acd-4a3c-9425-fed7d029c69d?api-version=2018-10-01", "Retry-After": "10", "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_Get.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_Get.json index 8b7937271b20..e9c6a0210475 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_Get.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_Get.json @@ -5,7 +5,7 @@ "storageSyncServiceName": "SampleStorageSyncService_1", "syncGroupName": "SampleSyncGroup_1", "cloudEndpointName": "SampleCloudEndpoint_1", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_ListBySyncGroup.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_ListBySyncGroup.json index efbe34179951..97e59243a4a3 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_ListBySyncGroup.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_ListBySyncGroup.json @@ -4,7 +4,7 @@ "resourceGroupName": "SampleResourceGroup_1", "storageSyncServiceName": "SampleStorageSyncService_1", "syncGroupName": "SampleSyncGroup_1", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_PostBackup.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_PostBackup.json index d9696e57c2e3..f426b8a091eb 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_PostBackup.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_PostBackup.json @@ -8,7 +8,7 @@ "parameters": { "azureFileShare": "https://sampleserver.file.core.test-cint.azure-test.net/sampleFileShare" }, - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { @@ -18,13 +18,13 @@ }, "body": { "backupMetadata": { - "cloudEndpointName": "subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/10.91.86.47/storageSyncServices/SampleStorageSyncService_1/syncGroups/SampleSyncGroup_1/cloudEndpoints/SampleCloudEndpoint_1" + "cloudEndpointName": "subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SampleSyncGroup_1/cloudEndpoints/SampleCloudEndpoint_1" } } }, "202": { "headers": { - "x-ms-location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/HfsMabFS1/syncGroups/HfsMabDS1/cloudEndpoints/HfsMabCE1/operationresults/baa40401-b043-4d1b-a80b-cb4e79fa1398?api-version=2018-07-01&resourcetype=PostBackupResourceType&ifxctx3=1847a938-7638-4d1b-943c-96ff2f8a2ec8", + "x-ms-location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/HfsMabFS1/syncGroups/HfsMabDS1/cloudEndpoints/HfsMabCE1/operationresults/baa40401-b043-4d1b-a80b-cb4e79fa1398?api-version=2018-10-01&resourcetype=PostBackupResourceType&ifxctx3=1847a938-7638-4d1b-943c-96ff2f8a2ec8", "Retry-After": "10", "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_PostRestore.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_PostRestore.json index 65f8ddd0cac6..301f8b4c4626 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_PostRestore.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_PostRestore.json @@ -10,24 +10,24 @@ "sourceAzureFileShareUri": "https://hfsazbackupdevintncus2.file.core.test-cint.azure-test.net/sampleFileShare", "status": "Succeeded", "restoreFileSpec": [ - { + { "path": "text1.txt", - "isdir" : false + "isdir" : false }, - { + { "path": "MyDir", - "isdir" : true + "isdir" : true }, - { + { "path": "MyDir/SubDir", - "isdir" : false + "isdir" : false }, - { + { "path": "MyDir/SubDir/File1.pdf", - "isdir" : false + "isdir" : false }] }, - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { @@ -36,9 +36,9 @@ "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" } }, - "202": { + "202": { "headers": { - "x-ms-location": "https: //management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/HfsMabFS1/syncGroups/HfsMabDS1/cloudEndpoints/HfsMabCE1/operationresults/d67cfb91-1b13-4710-8226-83467bb5b66d?api-version=2018-07-01&resourcetype=preBackupResourceType&ifxctx3=005909ad-d156-4514-a26e-dd1cc566db64", + "x-ms-location": "https: //management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/HfsMabFS1/syncGroups/HfsMabDS1/cloudEndpoints/HfsMabCE1/operationresults/d67cfb91-1b13-4710-8226-83467bb5b66d?api-version=2018-10-01&resourcetype=preBackupResourceType&ifxctx3=005909ad-d156-4514-a26e-dd1cc566db64", "Retry-After": "10", "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_PreBackup.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_PreBackup.json index cdf0d9c32694..91c96e444650 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_PreBackup.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_PreBackup.json @@ -5,10 +5,10 @@ "storageSyncServiceName": "SampleStorageSyncService_1", "syncGroupName": "SampleSyncGroup_1", "cloudEndpointName": "SampleCloudEndpoint_1", - "api-version": "2018-07-01", - "parameters" : { - "azureFileShare": "https://sampleserver.file.core.test-cint.azure-test.net/sampleFileShare" - } + "api-version": "2018-10-01", + "parameters" : { + "azureFileShare": "https://sampleserver.file.core.test-cint.azure-test.net/sampleFileShare" + } }, "responses": { "200": { @@ -17,9 +17,9 @@ "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" } }, - "202": { + "202": { "headers": { - "x-ms-location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/HfsMabFS1/syncGroups/HfsMabDS1/cloudEndpoints/HfsMabCE1/operationresults/d67cfb91-1b13-4710-8226-83467bb5b66d?api-version=2018-07-01&resourcetype=preBackupResourceType&ifxctx3=005909ad-d156-4514-a26e-dd1cc566db64", + "x-ms-location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/HfsMabFS1/syncGroups/HfsMabDS1/cloudEndpoints/HfsMabCE1/operationresults/d67cfb91-1b13-4710-8226-83467bb5b66d?api-version=2018-10-01&resourcetype=preBackupResourceType&ifxctx3=005909ad-d156-4514-a26e-dd1cc566db64", "Retry-After": "10", "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_PreRestore.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_PreRestore.json index e674432ddab0..c9e86428f4db 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_PreRestore.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_PreRestore.json @@ -5,25 +5,25 @@ "storageSyncServiceName": "SampleStorageSyncService_1", "syncGroupName": "SampleSyncGroup_1", "cloudEndpointName": "SampleCloudEndpoint_1", - "api-version": "2018-07-01", + "api-version": "2018-10-01", "parameters": { "azureFileShareUri": "https://hfsazbackupdevintncus2.file.core.test-cint.azure-test.net/sampleFileShare", "restoreFileSpec": [ - { + { "path": "text1.txt", - "isdir" : false + "isdir" : false }, - { + { "path": "MyDir", - "isdir" : true + "isdir" : true }, - { + { "path": "MyDir/SubDir", - "isdir" : false + "isdir" : false }, - { + { "path": "MyDir/SubDir/File1.pdf", - "isdir" : false + "isdir" : false }] } }, @@ -34,9 +34,9 @@ "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" } }, - "202": { + "202": { "headers": { - "x-ms-location": "https: //management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/HfsMabFS1/syncGroups/HfsMabDS1/cloudEndpoints/HfsMabCE1/operationresults/d67cfb91-1b13-4710-8226-83467bb5b66d?api-version=2018-07-01&resourcetype=preBackupResourceType&ifxctx3=005909ad-d156-4514-a26e-dd1cc566db64", + "x-ms-location": "https: //management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/HfsMabFS1/syncGroups/HfsMabDS1/cloudEndpoints/HfsMabCE1/operationresults/d67cfb91-1b13-4710-8226-83467bb5b66d?api-version=2018-10-01&resourcetype=preBackupResourceType&ifxctx3=005909ad-d156-4514-a26e-dd1cc566db64", "Retry-After": "10", "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_RestoreHeatbeat.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_RestoreHeatbeat.json index ea502c15f337..ed0fa8ad8438 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_RestoreHeatbeat.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/CloudEndpoints_RestoreHeatbeat.json @@ -5,7 +5,7 @@ "storageSyncServiceName": "SampleStorageSyncService_1", "syncGroupName": "SampleSyncGroup_1", "cloudEndpointName": "SampleCloudEndpoint_1", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/Operations_List.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/Operations_List.json index 06584b89d825..1cd542994397 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/Operations_List.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/Operations_List.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_Create.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_Create.json index af85f4dc4d17..2f6dd2b5a4d5 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_Create.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_Create.json @@ -8,16 +8,15 @@ "name": "SampleServer-prod3.redmond.corp.microsoft.com", "properties": { "serverRole": "Standalone", - "provisioningState": "Created", "serverCertificate": "\"MIIDFjCCAf6gAwIBAgIQQS+DS8uhc4VNzUkTw7wbRjANBgkqhkiG9w0BAQ0FADAzMTEwLwYDVQQDEyhhbmt1c2hiLXByb2QzLnJlZG1vbmQuY29ycC5taWNyb3NvZnQuY29tMB4XDTE3MDgwMzE3MDQyNFoXDTE4MDgwNDE3MDQyNFowMzExMC8GA1UEAxMoYW5rdXNoYi1wcm9kMy5yZWRtb25kLmNvcnAubWljcm9zb2Z0LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALDRvV4gmsIy6jGDPiHsXmvgVP749NNP7DopdlbHaNhjFmYINHl0uWylyaZmgJrROt2mnxN/zEyJtGnqYHlzUr4xvGq/qV5pqgdB9tag/sw9i22gfe9PRZ0FmSOZnXMbLYgLiDFqLtut5gHcOuWMj03YnkfoBEKlFBxWbagvW2yxz/Sxi9OVSJOKCaXra0RpcIHrO/KFl6ho2eE1/7Ykmfa8hZvSdoPd5gHdLiQcMB/pxq+mWp1fI6c8vFZoDu7Atn+NXTzYPKUxKzaisF12TsaKpohUsJpbB3Wocb0F5frn614D2pg14ERB5otjAMWw1m65csQWPI6dP8KIYe0+QPkCAwEAAaMmMCQwIgYDVR0lAQH/BBgwFgYIKwYBBQUHAwIGCisGAQQBgjcKAwwwDQYJKoZIhvcNAQENBQADggEBAA4RhVIBkw34M1RwakJgHvtjsOFxF1tVQA941NtLokx1l2Z8+GFQkcG4xpZSt+UN6wLerdCbnNhtkCErWUDeaT0jxk4g71Ofex7iM04crT4iHJr8mi96/XnhnkTUs+GDk12VgdeeNEczMZz+8Mxw9dJ5NCnYgTwO0SzGlclRsDvjzkLo8rh2ZG6n/jKrEyNXXo+hOqhupij0QbRP2Tvexdfw201kgN1jdZify8XzJ8Oi0bTS0KpJf2pNPOlooK2bjMUei9ANtEdXwwfVZGWvVh6tJjdv6k14wWWJ1L7zhA1IIVb1J+sQUzJji5iX0DrezjTz1Fg+gAzITaA/WsuujlM=\"", "lastHeartBeat": "\"2017-08-08T18:29:06.470652Z\"", - "serverManagementtErrorCode": 0, + "serverManagementErrorCode": 0, "serverOSVersion": "10.0.14393.0", "agentVersion": "1.0.277.0" }, "type": "Microsoft.StorageSync/storageSyncServices/registeredServers" }, - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { @@ -26,13 +25,13 @@ "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" }, "body": { - "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/10.91.86.47/storageSyncServices/SampleStorageSyncService_1/registeredServers/530a0384-50ac-456d-8240-9d6621404151", - "type": "10.91.86.47/storageSyncServices/registeredServers", + "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/registeredServers/530a0384-50ac-456d-8240-9d6621404151", + "type": "Microsoft.StorageSync/storageSyncServices/registeredServers", "name": "ankushb-prod3.redmond.corp.microsoft.com", "properties": { "agentVersion": "3.1.5.0", "serverOSVersion": "10.0.14393.0", - "serverManagementtErrorCode": 0, + "serverManagementErrorCode": 0, "lastHeartBeat": "\"2018-06-11T21:50:40.5840543Z\"", "provisioningState": "Succeeded", "serverRole": "Standalone", @@ -52,8 +51,8 @@ }, "202": { "headers": { - "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/63e554fd-4d27-4b91-8249-2fc697de7c69/operations/d4b00aa1-7ae0-47f0-9fa7-7ed3ea527bc9?api-version=2018-07-01", - "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/63e554fd-4d27-4b91-8249-2fc697de7c69/operationresults/d4b00aa1-7ae0-47f0-9fa7-7ed3ea527bc9?api-version=2018-07-01", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/63e554fd-4d27-4b91-8249-2fc697de7c69/operations/d4b00aa1-7ae0-47f0-9fa7-7ed3ea527bc9?api-version=2018-10-01", + "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/63e554fd-4d27-4b91-8249-2fc697de7c69/operationresults/d4b00aa1-7ae0-47f0-9fa7-7ed3ea527bc9?api-version=2018-10-01", "Retry-After": "10", "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_Delete.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_Delete.json index 99cf9e77b7ea..2aa6677150ca 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_Delete.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_Delete.json @@ -4,7 +4,7 @@ "resourceGroupName": "SampleResourceGroup_1", "storageSyncServiceName": "SampleStorageSyncService_1", "serverId": "41166691-ab03-43e9-ab3e-0330eda162ac", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { @@ -13,17 +13,16 @@ "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" } }, - "202": { + "202": { "headers": { - "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/cdb963fd-ea36-457e-9222-f85754ff398c/operations/20675646-8111-4158-954b-6b637e922cbf?api-version=2018-07-01", - "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/cdb963fd-ea36-457e-9222-f85754ff398c/operationresults/20675646-8111-4158-954b-6b637e922cbf?api-version=2018-07-01", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/cdb963fd-ea36-457e-9222-f85754ff398c/operations/20675646-8111-4158-954b-6b637e922cbf?api-version=2018-10-01", + "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/cdb963fd-ea36-457e-9222-f85754ff398c/operationresults/20675646-8111-4158-954b-6b637e922cbf?api-version=2018-10-01", "Retry-After": "10", "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" } }, "204": { - } } } \ No newline at end of file diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_Get.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_Get.json index d05673fe045d..c10b6ac63643 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_Get.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_Get.json @@ -4,7 +4,7 @@ "resourceGroupName": "SampleResourceGroup_1", "storageSyncServiceName": "SampleStorageSyncService_1", "serverId": "080d4133-bdb5-40a0-96a0-71a6057bfe9a", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { @@ -17,7 +17,7 @@ "properties": { "agentVersion": "3.1.5.0", "serverOSVersion": "10.0.14393.0", - "serverManagementtErrorCode": 0, + "serverManagementErrorCode": 0, "lastHeartBeat": "\"2018-06-11T21:50:40.5840543Z\"", "provisioningState": "Succeeded", "serverRole": "Standalone", diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_ListByStorageSyncService.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_ListByStorageSyncService.json index cd3481d9730f..4513ae03609d 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_ListByStorageSyncService.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_ListByStorageSyncService.json @@ -3,7 +3,7 @@ "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", "resourceGroupName": "SampleResourceGroup_1", "storageSyncServiceName": "SampleStorageSyncService_1", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { @@ -17,7 +17,7 @@ "properties": { "agentVersion": "3.1.5.0", "serverOSVersion": "10.0.14393.0", - "serverManagementtErrorCode": 0, + "serverManagementErrorCode": 0, "lastHeartBeat": "\"2018-06-11T21:50:40.5840543Z\"", "provisioningState": "Succeeded", "serverRole": "Standalone", diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_TriggerRollover.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_TriggerRollover.json index 0136bc789ffc..741873ba1a59 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_TriggerRollover.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/RegisteredServers_TriggerRollover.json @@ -7,7 +7,7 @@ "parameters": { "serverCertificate": "\"MIIDFjCCAf6gAwIBAgIQQS+DS8uhc4VNzUkTw7wbRjANBgkqhkiG9w0BAQ0FADAzMTEwLwYDVQQDEyhhbmt1c2hiLXByb2QzLnJlZG1vbmQuY29ycC5taWNyb3NvZnQuY29tMB4XDTE3MDgwMzE3MDQyNFoXDTE4MDgwNDE3MDQyNFowMzExMC8GA1UEAxMoYW5rdXNoYi1wcm9kMy5yZWRtb25kLmNvcnAubWljcm9zb2Z0LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALDRvV4gmsIy6jGDPiHsXmvgVP749NNP7DopdlbHaNhjFmYINHl0uWylyaZmgJrROt2mnxN/zEyJtGnqYHlzUr4xvGq/qV5pqgdB9tag/sw9i22gfe9PRZ0FmSOZnXMbLYgLiDFqLtut5gHcOuWMj03YnkfoBEKlFBxWbagvW2yxz/Sxi9OVSJOKCaXra0RpcIHrO/KFl6ho2eE1/7Ykmfa8hZvSdoPd5gHdLiQcMB/pxq+mWp1fI6c8vFZoDu7Atn+NXTzYPKUxKzaisF12TsaKpohUsJpbB3Wocb0F5frn614D2pg14ERB5otjAMWw1m65csQWPI6dP8KIYe0+QPkCAwEAAaMmMCQwIgYDVR0lAQH/BBgwFgYIKwYBBQUHAwIGCisGAQQBgjcKAwwwDQYJKoZIhvcNAQENBQADggEBAA4RhVIBkw34M1RwakJgHvtjsOFxF1tVQA941NtLokx1l2Z8+GFQkcG4xpZSt+UN6wLerdCbnNhtkCErWUDeaT0jxk4g71Ofex7iM04crT4iHJr8mi96/XnhnkTUs+GDk12VgdeeNEczMZz+8Mxw9dJ5NCnYgTwO0SzGlclRsDvjzkLo8rh2ZG6n/jKrEyNXXo+hOqhupij0QbRP2Tvexdfw201kgN1jdZify8XzJ8Oi0bTS0KpJf2pNPOlooK2bjMUei9ANtEdXwwfVZGWvVh6tJjdv6k14wWWJ1L7zhA1IIVb1J+sQUzJji5iX0DrezjTz1Fg+gAzITaA/WsuujlM=\"" }, - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { @@ -16,10 +16,10 @@ "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d222" } }, - "202": { + "202": { "headers": { - "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75/operations/fe680c98-5725-49c8-b0dc-5e29745f752b?api-version=2018-07-01", - "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75/operationresults/fe680c98-5725-49c8-b0dc-5e29745f752b?api-version=2018-07-01", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75/operations/fe680c98-5725-49c8-b0dc-5e29745f752b?api-version=2018-10-01", + "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75/operationresults/fe680c98-5725-49c8-b0dc-5e29745f752b?api-version=2018-10-01", "Retry-After": "10", "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Create.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Create.json index 46a5f9ca16ee..3c873c5a91e1 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Create.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Create.json @@ -4,20 +4,20 @@ "resourceGroupName": "SampleResourceGroup_1", "storageSyncServiceName": "SampleStorageSyncService_1", "syncGroupName": "SampleSyncGroup_1", - "cloudEndpointName": "SampleCloudEndpoint_1", "serverEndpointName": "SampleServerEndpoint_1", "parameters": { "properties": { - "provisioningState": "Created", "serverLocalPath": "D:\\SampleServerEndpoint_1", - "serverResourceId": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncServer_1/registeredServers/080d4133-bdb5-40a0-96a0-71a6057bfe9a", + "serverResourceId": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/registeredServers/080d4133-bdb5-40a0-96a0-71a6057bfe9a", "cloudTiering": "off", "volumeFreeSpacePercent": 100, - "tierFilesOlderThanDays": 0 + "tierFilesOlderThanDays": 0, + "offlineDataTransfer": "on", + "offlineDataTransferShareName": "myfileshare" }, "type": "Microsoft.StorageSync/storageSyncServices/syncGroups/serverEndpoints" }, - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { @@ -28,43 +28,29 @@ "body": { "name": "SampleServerEndpoint_1", "properties": { - "serverLocalPath": "C:\\data_quota", + "serverLocalPath": "D:\\SampleServerEndpoint_1", "cloudTiering": "off", - "volumeFreeSpacePercent": 20, + "volumeFreeSpacePercent": 100, "friendlyName": "somemachine.redmond.corp.microsoft.com", - "serverResourceId": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/anpintDemoRG/providers/kailanitest07.one.microsoft.com/storageSyncServices/healthdemo1/registeredServers/f94e2944-b48d-4e5b-bdc7-c48ab3712659", + "serverResourceId": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/registeredServers/080d4133-bdb5-40a0-96a0-71a6057bfe9a", "provisioningState": "Succeeded", "lastWorkflowId": "storageSyncServices/healthDemo1/workflows/569afb5c-7172-4cf8-a8ea-d987f727f11a", "lastOperationName": "ICreateServerEndpointWorkflow", "tierFilesOlderThanDays" : 0, - "syncStatus": { - "downloadHealth": "Healthy", - "uploadHealth": "Error", - "combinedHealth": "Error", - "lastUpdatedTimestamp": "2018-06-11T23:32:51.1057915Z", - "uploadStatus": { - "lastSyncResult": -2134351810, - "lastSyncTimestamp": "2018-06-11T23:32:51.1057915Z", - "lastSyncSuccessTimestamp": null, - "lastSyncPerItemErrorCount": 69 - }, - "downloadStatus": { - "lastSyncResult": 0, - "lastSyncTimestamp": "2018-06-11T23:28:33.9217334Z", - "lastSyncSuccessTimestamp": "2018-06-11T23:28:33.9217334Z", - "lastSyncPerItemErrorCount": 0 - }, - "currentProgress": null - } + "syncStatus": null, + "offlineDataTransfer": "on", + "offlineDataTransferStorageAccountResourceId": "/subscriptions/744f4d70-6d17-4921-8970-a765d14f763f/resourceGroups/myRG/providers/Microsoft.Storage/storageAccounts/mysa", + "offlineDataTransferStorageAccountTenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "offlineDataTransferShareName": "myfileshare" }, - "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/10.91.86.47/storageSyncServices/SampleStorageSyncService_1/syncGroups/SampleSyncGroup_1/serverEndpoints/SampleServerEndpoint_1", - "type": "10.91.86.47/storageSyncServices/syncGroups/serverEndpoints" + "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SampleSyncGroup_1/serverEndpoints/SampleServerEndpoint_1", + "type": "Microsoft.StorageSync/storageSyncServices/syncGroups/serverEndpoints" } }, "202": { "headers": { - "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75/operations/fe680c98-5725-49c8-b0dc-5e29745f752b?api-version=2018-07-01", - "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75/operationresults/fe680c98-5725-49c8-b0dc-5e29745f752b?api-version=2018-07-01", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75/operations/fe680c98-5725-49c8-b0dc-5e29745f752b?api-version=2018-10-01", + "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75/operationresults/fe680c98-5725-49c8-b0dc-5e29745f752b?api-version=2018-10-01", "Retry-After": "10", "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Delete.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Delete.json index 406e8750f6be..e98d72d2f7f4 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Delete.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Delete.json @@ -5,7 +5,7 @@ "storageSyncServiceName": "SampleStorageSyncService_1", "syncGroupName": "SampleSyncGroup_1", "serverEndpointName": "SampleServerEndpoint_1", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { @@ -14,10 +14,10 @@ "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" } }, - "202": { + "202": { "headers": { - "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/9122d971-147b-4dba-bada-1ceb7c9311e5/operations/6dce076b-1df5-4449-829b-69b24f38b5a1?api-version=2018-07-01", - "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/9122d971-147b-4dba-bada-1ceb7c9311e5/operationresults/6dce076b-1df5-4449-829b-69b24f38b5a1?api-version=2018-07-01", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/9122d971-147b-4dba-bada-1ceb7c9311e5/operations/6dce076b-1df5-4449-829b-69b24f38b5a1?api-version=2018-10-01", + "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/9122d971-147b-4dba-bada-1ceb7c9311e5/operationresults/6dce076b-1df5-4449-829b-69b24f38b5a1?api-version=2018-10-01", "Retry-After": "10", "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Get.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Get.json index 841c87231c30..6cd5540ed2aa 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Get.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Get.json @@ -5,7 +5,7 @@ "storageSyncServiceName": "SampleStorageSyncService_1", "syncGroupName": "SampleSyncGroup_1", "serverEndpointName": "SampleServerEndpoint_1", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { @@ -16,11 +16,11 @@ "body": { "name": "SampleServerEndpoint_1", "properties": { - "serverLocalPath": "C:\\data_quota", + "serverLocalPath": "D:\\SampleServerEndpoint_1", "cloudTiering": "off", - "volumeFreeSpacePercent": 20, + "volumeFreeSpacePercent": 100, "friendlyName": "somemachine.redmond.corp.microsoft.com", - "serverResourceId": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/anpintDemoRG/providers/kailanitest07.one.microsoft.com/storageSyncServices/healthdemo1/registeredServers/f94e2944-b48d-4e5b-bdc7-c48ab3712659", + "serverResourceId": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/registeredServers/080d4133-bdb5-40a0-96a0-71a6057bfe9a", "provisioningState": "Succeeded", "lastWorkflowId": "storageSyncServices/healthDemo1/workflows/569afb5c-7172-4cf8-a8ea-d987f727f11a", "lastOperationName": "ICreateServerEndpointWorkflow", @@ -43,9 +43,13 @@ "lastSyncPerItemErrorCount": 0 }, "currentProgress": null - } + }, + "offlineDataTransfer": "on", + "offlineDataTransferStorageAccountResourceId": "/subscriptions/744f4d70-6d17-4921-8970-a765d14f763f/resourceGroups/myRG/providers/Microsoft.Storage/storageAccounts/mysa", + "offlineDataTransferStorageAccountTenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "offlineDataTransferShareName": "myfileshare" }, - "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SyncGroup_Restore_08-08_Test112/serverEndpoints/SampleServerEndpoint_1", + "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SampleSyncGroup_1/serverEndpoints/SampleServerEndpoint_1", "type": "Microsoft.StorageSync/storageSyncServices/syncGroups/serverEndpoints" } } diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_ListBySyncGroup.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_ListBySyncGroup.json index c249b2644b5f..076baf7fe3dc 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_ListBySyncGroup.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_ListBySyncGroup.json @@ -4,7 +4,7 @@ "resourceGroupName": "SampleResourceGroup_1", "storageSyncServiceName": "SampleStorageSyncService_1", "syncGroupName": "SampleSyncGroup_1", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { @@ -16,14 +16,15 @@ "value": [{ "name": "SampleServerEndpoint_1", "properties": { - "serverLocalPath": "C:\\data_quota", + "serverLocalPath": "D:\\SampleServerEndpoint_1", "cloudTiering": "off", - "volumeFreeSpacePercent": 20, + "volumeFreeSpacePercent": 100, "friendlyName": "somemachine.redmond.corp.microsoft.com", - "serverResourceId": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/anpintDemoRG/providers/kailanitest07.one.microsoft.com/storageSyncServices/healthdemo1/registeredServers/f94e2944-b48d-4e5b-bdc7-c48ab3712659", + "serverResourceId": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/registeredServers/080d4133-bdb5-40a0-96a0-71a6057bfe9a", "provisioningState": "Succeeded", "lastWorkflowId": "storageSyncServices/healthDemo1/workflows/569afb5c-7172-4cf8-a8ea-d987f727f11a", "lastOperationName": "ICreateServerEndpointWorkflow", + "tierFilesOlderThanDays" : 0, "syncStatus": { "downloadHealth": "Healthy", "uploadHealth": "Error", @@ -42,31 +43,36 @@ "lastSyncPerItemErrorCount": 0 }, "currentProgress": null - } + }, + "offlineDataTransfer": "on", + "offlineDataTransferStorageAccountResourceId": "/subscriptions/744f4d70-6d17-4921-8970-a765d14f763f/resourceGroups/myRG/providers/Microsoft.Storage/storageAccounts/mysa", + "offlineDataTransferStorageAccountTenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "offlineDataTransferShareName": "myfileshare" }, - "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SyncGroup_Restore_08-08_Test112/serverEndpoints/SampleServerEndpoint_1", + "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SampleSyncGroup_1/serverEndpoints/SampleServerEndpoint_1", "type": "Microsoft.StorageSync/storageSyncServices/syncGroups/serverEndpoints" }, { "name": "SampleServerEndpoint_2", "properties": { - "serverLocalPath": "C:\\data_quota2", - "cloudTiering": "off", - "volumeFreeSpacePercent": 20, + "serverLocalPath": "D:\\SampleServerEndpoint_2", + "cloudTiering": "on", + "volumeFreeSpacePercent": 80, "friendlyName": "somemachine2.redmond.corp.microsoft.com", - "serverResourceId": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/anpintDemoRG/providers/kailanitest07.one.microsoft.com/storageSyncServices/healthdemo1/registeredServers/f94e2944-b48d-4e5b-bdc7-c48ab3712659", + "serverResourceId": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/registeredServers/f94e2944-b48d-4e5b-bdc7-c48ab3712659", "provisioningState": "Succeeded", - "lastWorkflowId": "storageSyncServices/healthDemo1/workflows/569afb5c-7172-4cf8-a8ea-d987f727f11b", + "lastWorkflowId": "storageSyncServices/healthDemo1/workflows/40b1dc00-d7d9-4721-a1e9-ab60139b830a", "lastOperationName": "ICreateServerEndpointWorkflow", + "tierFilesOlderThanDays" : 5, "syncStatus": { "downloadHealth": "Healthy", - "uploadHealth": "Error", - "combinedHealth": "Error", + "uploadHealth": "Healthy", + "combinedHealth": "Healthy", "lastUpdatedTimestamp": "2018-06-11T23:32:51.1057915Z", "uploadStatus": { - "lastSyncResult": -2134351810, + "lastSyncResult": 0, "lastSyncTimestamp": "2018-06-11T23:32:51.1057915Z", - "lastSyncSuccessTimestamp": null, - "lastSyncPerItemErrorCount": 69 + "lastSyncSuccessTimestamp": "2018-06-11T23:28:33.9217334Z", + "lastSyncPerItemErrorCount": 0 }, "downloadStatus": { "lastSyncResult": 0, @@ -75,9 +81,10 @@ "lastSyncPerItemErrorCount": 0 }, "currentProgress": null - } + }, + "offlineDataTransfer": "off" }, - "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SyncGroup_Restore_08-08_Test112/serverEndpoints/SampleServerEndpoint_2", + "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SampleSyncGroup_1/serverEndpoints/SampleServerEndpoint_2", "type": "Microsoft.StorageSync/storageSyncServices/syncGroups/serverEndpoints" }] } diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Recall.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Recall.json index e3df14383eb0..822648c210e1 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Recall.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Recall.json @@ -5,7 +5,7 @@ "storageSyncServiceName": "SampleStorageSyncService_1", "syncGroupName": "SampleSyncGroup_1", "serverEndpointName": "SampleServerEndpoint_1", - "api-version": "2018-07-01", + "api-version": "2018-10-01", "parameters": { "pattern": "", "recallPath": "" @@ -18,10 +18,10 @@ "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" } }, - "202": { + "202": { "headers": { - "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75/operations/fe680c98-5725-49c8-b0dc-5e29745f752b?api-version=2018-07-01", - "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75/operationresults/fe680c98-5725-49c8-b0dc-5e29745f752b?api-version=2018-07-01", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75/operations/fe680c98-5725-49c8-b0dc-5e29745f752b?api-version=2018-10-01", + "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75/operationresults/fe680c98-5725-49c8-b0dc-5e29745f752b?api-version=2018-10-01", "Retry-After": "10", "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Update.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Update.json index 56a8b939c5eb..a1875bc3e672 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Update.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/ServerEndpoints_Update.json @@ -6,13 +6,15 @@ "cloudEndpointName": "SampleCloudEndpoint_1", "syncGroupName": "SampleSyncGroup_1", "serverEndpointName": "SampleServerEndpoint_1", - "parameters" : { + "parameters" : { "properties": { "cloudTiering": "off", - "volumeFreeSpacePercent": 100 + "volumeFreeSpacePercent": 100, + "tierFilesOlderThanDays" : 0, + "offlineDataTransfer": "off" } - }, - "api-version": "2018-07-01" + }, + "api-version": "2018-10-01" }, "responses": { "200": { @@ -26,6 +28,7 @@ "serverLocalPath": "C:\\data_quota2", "cloudTiering": "off", "volumeFreeSpacePercent": 20, + "tierFilesOlderThanDays": 0, "friendlyName": "somemachine2.redmond.corp.microsoft.com", "serverResourceId": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/anpintDemoRG/providers/kailanitest07.one.microsoft.com/storageSyncServices/healthdemo1/registeredServers/f94e2944-b48d-4e5b-bdc7-c48ab3712659", "provisioningState": "Succeeded", @@ -49,16 +52,20 @@ "lastSyncPerItemErrorCount": 0 }, "currentProgress": null - } + }, + "offlineDataTransfer": "off", + "offlineDataTransferStorageAccountResourceId": "/subscriptions/744f4d70-6d17-4921-8970-a765d14f763f/resourceGroups/myRG/providers/Microsoft.Storage/storageAccounts/mysa", + "offlineDataTransferStorageAccountTenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "offlineDataTransferShareName": "myfileshare" }, - "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/10.91.86.47/storageSyncServices/SampleStorageSyncService_1/syncGroups/SampleSyncGroup_1/serverEndpoints/SampleServerEndpoint_1", - "type": "10.91.86.47/storageSyncServices/syncGroups/serverEndpoints" + "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SampleSyncGroup_1/serverEndpoints/SampleServerEndpoint_1", + "type": "Microsoft.StorageSync/storageSyncServices/syncGroups/serverEndpoints" } }, - "202": { + "202": { "headers": { - "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SSS_Swagger_08-09_Test212/workflows/3af798a9-26fd-44e7-a121-a4ad65f451bd/operations/ef2a30f4-9bb8-40e7-b403-5d6d3dc67a3c?api-version=2018-07-01", - "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SSS_Swagger_08-09_Test212/workflows/3af798a9-26fd-44e7-a121-a4ad65f451bd/operationresults/ef2a30f4-9bb8-40e7-b403-5d6d3dc67a3c?api-version=2018-07-01", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SSS_Swagger_08-09_Test212/workflows/3af798a9-26fd-44e7-a121-a4ad65f451bd/operations/ef2a30f4-9bb8-40e7-b403-5d6d3dc67a3c?api-version=2018-10-01", + "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SSS_Swagger_08-09_Test212/workflows/3af798a9-26fd-44e7-a121-a4ad65f451bd/operationresults/ef2a30f4-9bb8-40e7-b403-5d6d3dc67a3c?api-version=2018-10-01", "Retry-After": "10", "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServiceCheckNameAvailability_AlreadyExists.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServiceCheckNameAvailability_AlreadyExists.json index eddb9c226ab0..4a6791d4eb02 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServiceCheckNameAvailability_AlreadyExists.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServiceCheckNameAvailability_AlreadyExists.json @@ -1,20 +1,20 @@ { - "parameters": { - "api-version": "2018-07-01", - "subscriptionId": "5c6bc8e1-1eaf-4192-94d8-58ce463ac86c", - "locationName": "westus", "parameters": { - "name": "newstoragesyncservicename", - "type": "Microsoft.StorageSync/storageSyncServices" + "api-version": "2018-10-01", + "subscriptionId": "5c6bc8e1-1eaf-4192-94d8-58ce463ac86c", + "locationName": "westus", + "parameters": { + "name": "newstoragesyncservicename", + "type": "Microsoft.StorageSync/storageSyncServices" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "An account named 'newstoragesyncservicename' is already in use." + } + } } - }, - "responses": { - "200": { - "body": { - "nameAvailable": false, - "reason": "AlreadyExists", - "message": "An account named 'newstoragesyncservicename' is already in use." - } - } - } } \ No newline at end of file diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServiceCheckNameAvailability_Available.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServiceCheckNameAvailability_Available.json index 528cbbe0319d..ebbb297ec612 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServiceCheckNameAvailability_Available.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServiceCheckNameAvailability_Available.json @@ -1,18 +1,18 @@ { - "parameters": { - "api-version": "2018-07-01", - "subscriptionId": "5c6bc8e1-1eaf-4192-94d8-58ce463ac86c", - "locationName": "westus", "parameters": { - "name": "newstoragesyncservicename", - "type": "Microsoft.StorageSync/storageSyncServices" + "api-version": "2018-10-01", + "subscriptionId": "5c6bc8e1-1eaf-4192-94d8-58ce463ac86c", + "locationName": "westus", + "parameters": { + "name": "newstoragesyncservicename", + "type": "Microsoft.StorageSync/storageSyncServices" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } } - }, - "responses": { - "200": { - "body": { - "nameAvailable": true - } - } - } } \ No newline at end of file diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_Create.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_Create.json index fadfd4c0cf4b..7e1a3d40a951 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_Create.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_Create.json @@ -8,7 +8,7 @@ "tags": {}, "properties": {} }, - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_Delete.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_Delete.json index be39f9b2193d..842ca3022ae4 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_Delete.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_Delete.json @@ -3,7 +3,7 @@ "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", "resourceGroupName": "SampleResourceGroup_1", "storageSyncServiceName": "SampleStorageSyncService_1", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_Get.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_Get.json index 44a42c2d4da4..ec7ad30699f4 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_Get.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_Get.json @@ -4,7 +4,7 @@ "resourceGroupName": "SampleResourceGroup_1", "storageSyncServiceName": "SampleStorageSyncService_1", "syncGroupName": "SampleSyncGroup_1", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_ListByResourceGroup.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_ListByResourceGroup.json index 98e01908a7ba..c8a4eed062ac 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_ListByResourceGroup.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_ListByResourceGroup.json @@ -2,7 +2,7 @@ "parameters": { "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", "resourceGroupName": "SampleResourceGroup_1", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { @@ -11,38 +11,38 @@ "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" }, "body": { - "value": [{ - "name": "SampleStorageSyncService_1", - "location": "WestUS", - "tags": {}, - "properties": { - "storageSyncServiceStatus": 0, - "storageSyncServiceUid": "\"3d1bf292-0f2a-4cc1-a3e1-60f35800e40c\"" - }, - "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1", - "type": "Microsoft.StorageSync/storageSyncServices" - }, { - "name": "SampleStorageSyncService_2", - "location": "WestUS", - "tags": {}, - "properties": { - "storageSyncServiceStatus": 0, - "storageSyncServiceUid": "\"2de01144-72da-4d7f-9d0c-e858855114a8\"" - }, - "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_2", - "type": "Microsoft.StorageSync/storageSyncServices" - }, { - "name": "SampleStorageSyncService_3", - "location": "WestUS", - "tags": {}, - "properties": { - "storageSyncServiceStatus": 0, - "storageSyncServiceUid": "\"b2c58ee5-933e-462c-8a9e-b30f2bdd8fa3\"" - }, - "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_3", - "type": "Microsoft.StorageSync/storageSyncServices" - }] -} + "value": [{ + "name": "SampleStorageSyncService_1", + "location": "WestUS", + "tags": {}, + "properties": { + "storageSyncServiceStatus": 0, + "storageSyncServiceUid": "\"3d1bf292-0f2a-4cc1-a3e1-60f35800e40c\"" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1", + "type": "Microsoft.StorageSync/storageSyncServices" + }, { + "name": "SampleStorageSyncService_2", + "location": "WestUS", + "tags": {}, + "properties": { + "storageSyncServiceStatus": 0, + "storageSyncServiceUid": "\"2de01144-72da-4d7f-9d0c-e858855114a8\"" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_2", + "type": "Microsoft.StorageSync/storageSyncServices" + }, { + "name": "SampleStorageSyncService_3", + "location": "WestUS", + "tags": {}, + "properties": { + "storageSyncServiceStatus": 0, + "storageSyncServiceUid": "\"b2c58ee5-933e-462c-8a9e-b30f2bdd8fa3\"" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_3", + "type": "Microsoft.StorageSync/storageSyncServices" + }] + } } } } \ No newline at end of file diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_ListBySubscription.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_ListBySubscription.json index b692ba14ebad..90a7c1889ad4 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_ListBySubscription.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_ListBySubscription.json @@ -1,7 +1,7 @@ { "parameters": { "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { @@ -10,38 +10,38 @@ "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" }, "body": { - "value": [{ - "name": "SampleStorageSyncService_1", - "location": "WestUS", - "tags": {}, - "properties": { - "storageSyncServiceStatus": 0, - "storageSyncServiceUid": "\"3d1bf292-0f2a-4cc1-a3e1-60f35800e40c\"" - }, - "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1", - "type": "Microsoft.StorageSync/storageSyncServices" - }, { - "name": "SampleStorageSyncService_2", - "location": "WestUS", - "tags": {}, - "properties": { - "storageSyncServiceStatus": 0, - "storageSyncServiceUid": "\"2de01144-72da-4d7f-9d0c-e858855114a8\"" - }, - "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_2", - "type": "Microsoft.StorageSync/storageSyncServices" - }, { - "name": "SampleStorageSyncService_3", - "location": "WestUS", - "tags": {}, - "properties": { - "storageSyncServiceStatus": 0, - "storageSyncServiceUid": "\"b2c58ee5-933e-462c-8a9e-b30f2bdd8fa3\"" - }, - "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_3", - "type": "Microsoft.StorageSync/storageSyncServices" - }] -} + "value": [{ + "name": "SampleStorageSyncService_1", + "location": "WestUS", + "tags": {}, + "properties": { + "storageSyncServiceStatus": 0, + "storageSyncServiceUid": "\"3d1bf292-0f2a-4cc1-a3e1-60f35800e40c\"" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1", + "type": "Microsoft.StorageSync/storageSyncServices" + }, { + "name": "SampleStorageSyncService_2", + "location": "WestUS", + "tags": {}, + "properties": { + "storageSyncServiceStatus": 0, + "storageSyncServiceUid": "\"2de01144-72da-4d7f-9d0c-e858855114a8\"" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_2", + "type": "Microsoft.StorageSync/storageSyncServices" + }, { + "name": "SampleStorageSyncService_3", + "location": "WestUS", + "tags": {}, + "properties": { + "storageSyncServiceStatus": 0, + "storageSyncServiceUid": "\"b2c58ee5-933e-462c-8a9e-b30f2bdd8fa3\"" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_3", + "type": "Microsoft.StorageSync/storageSyncServices" + }] + } } } } \ No newline at end of file diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_Update.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_Update.json index 38725183d6ce..c87a5bdb26b3 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_Update.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/StorageSyncServices_Update.json @@ -3,7 +3,7 @@ "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", "resourceGroupName": "SampleResourceGroup_1", "storageSyncServiceName": "SampleStorageSyncService_1", - "api-version": "2018-07-01", + "api-version": "2018-10-01", "parameters": { "tags": { "Environment": "Test", diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/SyncGroups_Create.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/SyncGroups_Create.json index fe748a0880e4..6ed4695412b1 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/SyncGroups_Create.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/SyncGroups_Create.json @@ -4,12 +4,11 @@ "resourceGroupName": "SampleResourceGroup_1", "storageSyncServiceName": "SampleStorageSyncService_1", "syncGroupName": "SampleSyncGroup_1", - "api-version": "2018-07-01", + "api-version": "2018-10-01", "parameters": { "properties": {}, "type": "Microsoft.StorageSync/storageSyncServices/syncGroups" } - }, "responses": { "200": { diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/SyncGroups_Delete.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/SyncGroups_Delete.json index 0501688779ce..e38d69d301dd 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/SyncGroups_Delete.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/SyncGroups_Delete.json @@ -4,7 +4,7 @@ "resourceGroupName": "SampleResourceGroup_1", "storageSyncServiceName": "SampleStorageSyncService_1", "syncGroupName": "SampleSyncGroup_1", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { @@ -13,7 +13,7 @@ "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" } }, - "204": { - } + "204": { + } } } \ No newline at end of file diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/SyncGroups_Get.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/SyncGroups_Get.json index ac0272a4a29e..88e3f9357511 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/SyncGroups_Get.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/SyncGroups_Get.json @@ -4,7 +4,7 @@ "resourceGroupName": "SampleResourceGroup_1", "storageSyncServiceName": "SampleStorageSyncService_1", "syncGroupName": "SampleSyncGroup_1", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/SyncGroups_ListByStorageSyncService.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/SyncGroups_ListByStorageSyncService.json index fcfa4f9688ae..d16112052d9c 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/SyncGroups_ListByStorageSyncService.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/SyncGroups_ListByStorageSyncService.json @@ -3,7 +3,7 @@ "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", "resourceGroupName": "SampleResourceGroup_1", "storageSyncServiceName": "SampleStorageSyncService_1", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { @@ -12,16 +12,16 @@ "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" }, "body": { - "value": [{ - "name": "SampleSyncGroup_1", - "properties": { - "uniqueId": "191660cd-6a1a-4f8c-9787-a6bed206a1dd", - "syncGroupStatus": "0" - }, - "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SSS_Restore_08-08_Test112/syncGroups/SampleSyncGroup_1", - "type": "Microsoft.StorageSync/storageSyncServices/syncGroups" - }] -} + "value": [{ + "name": "SampleSyncGroup_1", + "properties": { + "uniqueId": "191660cd-6a1a-4f8c-9787-a6bed206a1dd", + "syncGroupStatus": "0" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SSS_Restore_08-08_Test112/syncGroups/SampleSyncGroup_1", + "type": "Microsoft.StorageSync/storageSyncServices/syncGroups" + }] + } } } } \ No newline at end of file diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/Workflows_Abort.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/Workflows_Abort.json index 84e34badbf83..2325f07cd2cf 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/Workflows_Abort.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/Workflows_Abort.json @@ -4,7 +4,7 @@ "resourceGroupName": "SampleResourceGroup_1", "storageSyncServiceName": "SampleStorageSyncService_1", "workflowId": "7ffd50b3-5574-478d-9ff2-9371bc42ce68", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/Workflows_Get.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/Workflows_Get.json index 4d4d39648d21..d58e5a85339d 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/Workflows_Get.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/Workflows_Get.json @@ -4,7 +4,7 @@ "resourceGroupName": "SampleResourceGroup_1", "storageSyncServiceName": "SampleStorageSyncService_1", "workflowId": "828219ea-083e-48b5-89ea-8fd9991b2e75", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/Workflows_ListByStorageSyncService.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/Workflows_ListByStorageSyncService.json index c5f24afc125a..e31db2d79c0d 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/Workflows_ListByStorageSyncService.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/examples/Workflows_ListByStorageSyncService.json @@ -3,7 +3,7 @@ "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", "resourceGroupName": "SampleResourceGroup_1", "storageSyncServiceName": "SampleStorageSyncService_1", - "api-version": "2018-07-01" + "api-version": "2018-10-01" }, "responses": { "200": { diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/storagesync.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/storagesync.json index fdf5225bbcde..230434c6450a 100644 --- a/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/storagesync.json +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/preview/2018-10-01/storagesync.json @@ -2588,6 +2588,14 @@ "serverResourceId": { "$ref": "#/definitions/ResourceId", "description": "Server Resource Id." + }, + "offlineDataTransfer": { + "$ref": "#/definitions/FeatureStatus", + "description": "Offline data transfer" + }, + "offlineDataTransferShareName": { + "type": "string", + "description": "Offline data transfer share name" } } }, @@ -3165,7 +3173,7 @@ "type": "string", "description": "Registered Server OS Version" }, - "serverManagementtErrorCode": { + "serverManagementErrorCode": { "type": "integer", "description": "Registered Server Management Error Code" }, @@ -3256,7 +3264,7 @@ "description": "Friendly Name" }, "backupEnabled": { - "type": "boolean", + "type": "string", "description": "Backup Enabled", "readOnly": true }, @@ -3293,6 +3301,14 @@ "minimum": 0, "maximum": 2147483647, "description": "Tier files older than days." + }, + "offlineDataTransfer": { + "$ref": "#/definitions/FeatureStatus", + "description": "Offline data transfer" + }, + "offlineDataTransferShareName": { + "type": "string", + "description": "Offline data transfer share name" } } }, @@ -3340,9 +3356,134 @@ "type": "string", "description": "Resource Last Operation Name" }, - "syncStatus": { + "syncStatus": { "type": "object", - "description": "Sync Health Status" + "$ref": "#/definitions/ServerEndpointHealth", + "description": "Server Endpoint properties." + }, + "offlineDataTransfer": { + "$ref": "#/definitions/FeatureStatus", + "description": "Offline data transfer" + }, + "offlineDataTransferStorageAccountResourceId": { + "type": "string", + "description": "Offline data transfer storage account resource ID", + "readOnly": true + }, + "offlineDataTransferStorageAccountTenantId": { + "type": "string", + "description": "Offline data transfer storage account tenant ID", + "readOnly": true + }, + "offlineDataTransferShareName": { + "type": "string", + "description": "Offline data transfer share name" + } + } + }, + "ServerEndpointHealth": { + "type": "object", + "description": "ServerEndpoint Health object.", + "properties": { + "downloadHealth": { + "$ref": "#/definitions/HealthState", + "description": "Download Health Status." + }, + "uploadHealth": { + "$ref": "#/definitions/HealthState", + "description": "Upload Health Status." + }, + "combinedHealth": { + "$ref": "#/definitions/HealthState", + "description": "Combined Health Status." + }, + "lastUpdatedTimestamp": { + "type" : "string", + "format" : "date-time", + "description": "Last Updated Timestamp" + }, + "uploadStatus": { + "$ref": "#/definitions/SyncSessionStatus", + "description": "Upload Status" + }, + "downloadStatus": { + "$ref": "#/definitions/SyncSessionStatus", + "description": "Download Status" + }, + "currentProgress": { + "$ref": "#/definitions/SyncProgressStatus", + "description": "Current progress" + } + } + }, + "SyncSessionStatus": { + "type": "object", + "description": "Sync Session status object.", + "properties": { + "lastSyncResult": { + "type": "integer", + "description": "Last sync status" + }, + "lastSyncTimestamp": { + "type" : "string", + "format" : "date-time", + "description": "Last sync timestamp" + }, + "lastSyncSuccessTimestamp": { + "type" : "string", + "format" : "date-time", + "description": "Last sync success timestamp" + }, + "lastSyncPerItemErrorCount": { + "type": "integer", + "minimum": 0, + "maximum": 2147483647, + "description": "Last sync per item error count." + } + } + }, + "SyncProgressStatus": { + "type": "object", + "description": "Sync Session status object.", + "properties": { + "progressTimestamp": { + "type" : "string", + "format" : "date-time", + "description": "Progress timestamp" + }, + "syncDirection": { + "$ref": "#/definitions/ProgressType", + "description": "Sync direction." + }, + "perItemErrorCount": { + "type": "integer", + "minimum": 0, + "maximum": 2147483647, + "description": "Per item error count" + }, + "appliedItemCount": { + "type": "integer", + "minimum": 0, + "maximum": 2147483647, + "description": "Applied item count." + }, + "totalItemCount": { + "type": "integer", + "minimum": 0, + "maximum": 2147483647, + "description": "Total item count" + }, + "appliedBytes": { + "type": "integer", + "minimum": 0, + "maximum": 2147483647, + "description": "Applied bytes" + }, + "totalBytes": { + "type": "integer", + "minimum": 0, + "maximum": 2147483647, + "description": "Total bytes" } } }, @@ -3366,6 +3507,17 @@ "off" ] }, + "HealthState": { + "type": "string", + "description": "Type of the Health state", + "enum": [ + "Healthy", + "Error", + "SyncBlockedForRestore", + "SyncBlockedForChangeDetectionPostRestore", + "NoActivity" + ] + }, "WorkflowStatus": { "type": "string", "description": "Type of the Workflow Status", diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/preview/2018-11-01-preview/examples/createSubscription.json b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2018-11-01-preview/examples/createSubscription.json new file mode 100644 index 000000000000..d93c7f851a1b --- /dev/null +++ b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2018-11-01-preview/examples/createSubscription.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "billingAccountName": "12a6eed9-5d39-4103-a5db-2db1db0a8c67", + "invoiceSectionName": "b859d705-1ed7-4769-9d4b-19238e9e8ac2_10_31", + "api-version": "2018-11-01-preview", + "body": { + "displayName": "Test Ea Azure Sub", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/12a6eed9-5d39-4103-a5db-2db1db0a8c67/billingProfiles/dbcb81c8-cda9-4b01-b9fc-831e6a2e152e", + "skuId": "0001", + "costCenter": "myCostCenter123", + "owner": { + "objectId": "973034ff-acb7-409c-b731-e789672c7b31" + }, + "additionalParameters": { + } + } + }, + "responses": { + "202": { + "headers": { + "Location": + "/providers/Microsoft.Subscription/subscriptionOperations/aeb76128-ebde-4f5a-a9ed-e7bbf2dbc994?api-version=2018-11-01-preview", + "Retry-After": 8 + } + }, + "200": { + "body": { + "subscriptionLink": "/subscriptions/d0d6ee57-6530-4fca-93a6-b755a070be35" + } + } + } +} \ No newline at end of file diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/preview/2018-11-01-preview/examples/getOperations.json b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2018-11-01-preview/examples/getOperations.json new file mode 100644 index 000000000000..e0713487bc1d --- /dev/null +++ b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2018-11-01-preview/examples/getOperations.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2018-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Subscription/createSubscription/action", + "display": { + "provider": "Microsoft Subscription", + "resource": "Resources", + "operation": "Create an Azure subscription" + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/preview/2018-11-01-preview/examples/getSubscriptionOperation.json b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2018-11-01-preview/examples/getSubscriptionOperation.json new file mode 100644 index 000000000000..a78d675da35b --- /dev/null +++ b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2018-11-01-preview/examples/getSubscriptionOperation.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "operationId": "e4b8d068-f574-462a-a76f-6fa0afc613c9", + "api-version": "2018-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Location": "/providers/Microsoft.Subscription/subscriptionOperations/e4b8d068-f574-462a-a76f-6fa0afc613c9?api-version=2018-11-01-preview", + "Retry-After": 8 + } + }, + "200": { + "body": { + "subscriptionLink": "/subscriptions/4df8d5c2-1b7e-4dd5-bc61-640704bde633" + } + } + } +} \ No newline at end of file diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/preview/2018-11-01-preview/subscriptions.json b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2018-11-01-preview/subscriptions.json new file mode 100644 index 000000000000..befc022f5aac --- /dev/null +++ b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2018-11-01-preview/subscriptions.json @@ -0,0 +1,330 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-11-01-preview", + "title": "SubscriptionClient", + "description": "Subscription client provides an interface to create and manage Azure subscriptions programmatically." + }, + "schemes": [ + "https" + ], + "host": "management.azure.com", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.Subscription/operations": { + "get": { + "description": "Lists all of the available Microsoft.Subscription API operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "getOperations": { + "$ref": "./examples/getOperations.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Subscription/subscriptionOperations/{operationId}": { + "get": { + "description": "Get the status of the pending Microsoft.Subscription API operations.", + "operationId": "SubscriptionOperation_Get", + "x-ms-examples": { + "getPendingSubscriptionOperations": { + "$ref": "./examples/getSubscriptionOperation.json" + } + }, + "responses": { + "202": { + "description": "Accepted. Subscription update is in progress.", + "headers": { + "Location": { + "description": "The URL where the status of the asynchronous operation can be checked.", + "type": "string" + }, + "Retry-After": { + "description": "The amount of delay to use while the status of the operation is checked. The value is expressed in seconds.", + "type": "integer" + } + } + }, + "200": { + "description": "Successful completion of the asynchronous operation", + "schema": { + "$ref": "#/definitions/SubscriptionCreationResult" + } + } + }, + "parameters": [ + { + "name": "operationId", + "in": "path", + "description": "The operation ID, which can be found from the Location field in the generate recommendation response header.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ] + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/invoiceSections/{invoiceSectionName}/providers/Microsoft.Subscription/createSubscription": { + "post": { + "description": "Creates an Azure subscription", + "operationId": "SubscriptionFactory_CreateSubscription", + "x-ms-examples": { + "createSubscription": { + "$ref": "./examples/createSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "200": { + "description": "Normal response for a successful query. The response body will contain the data that matches the filters specified in the query parameters.", + "schema": { + "$ref": "#/definitions/SubscriptionCreationResult" + } + }, + "202": { + "description": "Accepted. Subscription creation is in progress.", + "headers": { + "Location": { + "description": "GET this URL to retrieve the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "The amount of delay to use while the status of the operation is checked. The value is expressed in seconds.", + "type": "integer" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "name": "billingAccountName", + "in": "path", + "description": "The name of the commerce root billing account.", + "required": true, + "type": "string" + }, + { + "name": "invoiceSectionName", + "in": "path", + "description": "The name of the invoice section.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "body", + "in": "body", + "description": "The subscription creation parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/SubscriptionCreationParameters" + } + } + ] + } + } + }, + "definitions": { + "SubscriptionCreationResult": { + "description": "The created subscription object.", + "properties": { + "subscriptionLink": { + "description": "The link to the new subscription.", + "type": "string" + } + } + }, + "SubscriptionCreationParameters": { + "description": "Subscription Creation Parameters required to create a new Azure subscription.", + "properties": { + "displayName": { + "description": "The display name of the subscription.", + "type": "string" + }, + "billingProfileId": { + "description": "The ARM id of the billing profile.", + "type": "string" + }, + "skuId": { + "description": "The commerce id of the sku.", + "type": "string" + }, + "costCenter": { + "description": "optional customer cost center", + "type": "string" + }, + "owner": { + "description": "rbac owner of the subscription", + "$ref": "#/definitions/AdPrincipal" + }, + "additionalParameters": { + "description": "Additional, untyped parameters to support custom subscription creation scenarios.", + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + }, + "ErrorResponse": { + "description": "Describes the format of Error response.", + "type": "object", + "properties": { + "code": { + "description": "Error code", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + }, + "AdPrincipal": { + "description": "Active Directory Principal for subscription creation delegated permission", + "properties": { + "objectId": { + "description": "Object id of the Principal", + "type": "string" + } + }, + "required": [ + "objectId" + ] + }, + "SubscriptionOperationListResult": { + "description": "A list of pending subscription operations.", + "properties": { + "value": { + "description": "A list of pending SubscriptionOperations", + "type": "array", + "items": { + "$ref": "#/definitions/SubscriptionOperation" + } + } + } + }, + "SubscriptionOperation": { + "description": "status of the subscription POST operation.", + "properties": { + "id": { + "type": "string", + "description": "The operation Id.", + "readOnly": true + }, + "status": { + "description": "Status of the pending subscription", + "type": "string" + }, + "statusDetail": { + "description": "Status Detail of the pending subscription", + "type": "string" + } + } + }, + "OperationListResult": { + "description": "Result of the request to list operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of operations." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft.Subscription", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "type": "string" + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + } + } + } + } + } + }, + "parameters": { + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request. Current version is 2015-06-01" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + } +} \ No newline at end of file diff --git a/specification/subscription/resource-manager/readme.md b/specification/subscription/resource-manager/readme.md index 74498b7f5e58..676edf37cb20 100644 --- a/specification/subscription/resource-manager/readme.md +++ b/specification/subscription/resource-manager/readme.md @@ -31,10 +31,22 @@ These are the global settings for the Subscription API. ``` yaml openapi-type: arm -tag: package-2018-03-preview +tag: package-2018-11-preview ``` +### Tag: package-2018-11-preview + +These settings apply only when `--tag=package-2018-03-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2018-11-preview' +input-file: +- Microsoft.Subscription/preview/2018-11-01-preview/subscriptions.json +- Microsoft.Subscription/stable/2016-06-01/subscriptions.json +title: SubscriptionClient +description: The subscription client +``` + ### Tag: package-2018-03-preview These settings apply only when `--tag=package-2018-03-preview` is specified on the command line. diff --git a/specification/subscription/resource-manager/readme.nodejs.md b/specification/subscription/resource-manager/readme.nodejs.md index 226e3a768289..a27909f509ab 100644 --- a/specification/subscription/resource-manager/readme.nodejs.md +++ b/specification/subscription/resource-manager/readme.nodejs.md @@ -7,7 +7,7 @@ Please also specify `--node-sdks-folder=ReroutePercentage until it reaches \nMinReroutePercentage or MaxReroutePercentage. Site metrics are checked every N minutes specificed in ChangeIntervalInMinutes.\nCustom decision algorithm can be provided in TiPCallback site extension which URL can be specified in ChangeDecisionCallbackUrl.", + "description": "In auto ramp up scenario this is the step to add/remove from ReroutePercentage until it reaches \nMinReroutePercentage or MaxReroutePercentage. Site metrics are checked every N minutes specified in ChangeIntervalInMinutes.\nCustom decision algorithm can be provided in TiPCallback site extension which URL can be specified in ChangeDecisionCallbackUrl.", "type": "number" }, "changeIntervalInMinutes": { "format": "int32", - "description": "Specifies interval in mimuntes to reevaluate ReroutePercentage.", + "description": "Specifies interval in minutes to reevaluate ReroutePercentage.", "type": "integer" }, "minReroutePercentage": { @@ -2311,7 +2311,7 @@ } }, "SlotSwapStatus": { - "description": "The status of the last successfull slot swap operation.", + "description": "The status of the last successful slot swap operation.", "type": "object", "properties": { "timestampUtc": { @@ -2507,7 +2507,7 @@ } }, "User": { - "description": "User crendentials used for publishing activity.", + "description": "User credentials used for publishing activity.", "type": "object", "allOf": [ { diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2016-09-01/AppServiceEnvironments.json b/specification/web/resource-manager/Microsoft.Web/stable/2016-09-01/AppServiceEnvironments.json index 6311b8eb9e0a..3c9a7ad63d24 100644 --- a/specification/web/resource-manager/Microsoft.Web/stable/2016-09-01/AppServiceEnvironments.json +++ b/specification/web/resource-manager/Microsoft.Web/stable/2016-09-01/AppServiceEnvironments.json @@ -1885,7 +1885,7 @@ } }, "AppServiceEnvironmentPatchResource": { - "description": "ARM resource for a app service enviroment.", + "description": "ARM resource for a app service environment.", "type": "object", "allOf": [ { diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/AppServiceEnvironments.json b/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/AppServiceEnvironments.json index eaf143205bc7..8748d4d25ae9 100644 --- a/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/AppServiceEnvironments.json +++ b/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/AppServiceEnvironments.json @@ -2132,7 +2132,7 @@ } }, "AppServiceEnvironmentPatchResource": { - "description": "ARM resource for a app service enviroment.", + "description": "ARM resource for a app service environment.", "type": "object", "allOf": [ { diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/CommonDefinitions.json b/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/CommonDefinitions.json index 1502bbb8f0c9..1cfb2195d44a 100644 --- a/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/CommonDefinitions.json +++ b/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/CommonDefinitions.json @@ -909,6 +909,11 @@ "description": "Kind of site that was deleted", "type": "string", "readOnly": true + }, + "geoRegionName": { + "description": "Geo Region of the deleted site", + "type": "string", + "readOnly": true } }, "x-ms-client-flatten": true @@ -1562,12 +1567,12 @@ }, "changeStep": { "format": "double", - "description": "In auto ramp up scenario this is the step to to add/remove from ReroutePercentage until it reaches \nMinReroutePercentage or MaxReroutePercentage. Site metrics are checked every N minutes specificed in ChangeIntervalInMinutes.\nCustom decision algorithm can be provided in TiPCallback site extension which URL can be specified in ChangeDecisionCallbackUrl.", + "description": "In auto ramp up scenario this is the step to add/remove from ReroutePercentage until it reaches \nMinReroutePercentage or MaxReroutePercentage. Site metrics are checked every N minutes specified in ChangeIntervalInMinutes.\nCustom decision algorithm can be provided in TiPCallback site extension which URL can be specified in ChangeDecisionCallbackUrl.", "type": "number" }, "changeIntervalInMinutes": { "format": "int32", - "description": "Specifies interval in mimuntes to reevaluate ReroutePercentage.", + "description": "Specifies interval in minutes to reevaluate ReroutePercentage.", "type": "integer" }, "minReroutePercentage": { @@ -2549,7 +2554,7 @@ } }, "SlotSwapStatus": { - "description": "The status of the last successfull slot swap operation.", + "description": "The status of the last successful slot swap operation.", "type": "object", "properties": { "timestampUtc": { @@ -2717,7 +2722,7 @@ } }, "User": { - "description": "User crendentials used for publishing activity.", + "description": "User credentials used for publishing activity.", "type": "object", "allOf": [ { diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/WebApps.json b/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/WebApps.json index 08e0da54a7e8..5b3569472564 100644 --- a/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/WebApps.json +++ b/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/WebApps.json @@ -5149,7 +5149,10 @@ "202": { "description": "Operation is in progress.", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Operation" + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } } }, "default": { @@ -5214,7 +5217,7 @@ ], "responses": { "200": { - "description": "OK.", + "description": "OK", "schema": { "type": "string" } @@ -5287,7 +5290,10 @@ "202": { "description": "Operation is in progress.", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Operation" + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } } }, "default": { @@ -5449,7 +5455,10 @@ "202": { "description": "Operation is in progress.", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Operation" + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } } }, "default": { @@ -5461,7 +5470,7 @@ }, "x-ms-examples": { "Get the current status of a network trace operation for a site": { - "$ref": "./examples/GetWebSiteNetworkTraceOperationV2.json" + "$ref": "./examples/GetWebSiteNetworkTraceOperation.json" } } } @@ -12617,7 +12626,10 @@ "202": { "description": "Operation is in progress.", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Operation" + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } } }, "default": { @@ -12689,7 +12701,7 @@ ], "responses": { "200": { - "description": "OK.", + "description": "OK", "schema": { "type": "string" } @@ -12769,7 +12781,10 @@ "202": { "description": "Operation is in progress.", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Operation" + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } } }, "default": { @@ -12952,7 +12967,10 @@ "202": { "description": "Operation is in progress.", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Operation" + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } } }, "default": { @@ -14905,6 +14923,58 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/snapshotsdr": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns all Snapshots to the user from DRSecondary endpoint.", + "description": "Returns all Snapshots to the user from DRSecondary endpoint.", + "operationId": "WebApps_ListSnapshotsFromDRSecondarySlot", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Website Name.", + "required": true, + "type": "string" + }, + { + "name": "slot", + "in": "path", + "description": "Website Slot.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/sourcecontrols/web": { "get": { "tags": [ @@ -15253,7 +15323,10 @@ "202": { "description": "Operation is in progress.", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Operation" + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } } }, "default": { @@ -16552,6 +16625,51 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/snapshotsdr": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Returns all Snapshots to the user from DRSecondary endpoint.", + "description": "Returns all Snapshots to the user from DRSecondary endpoint.", + "operationId": "WebApps_ListSnapshotsFromDRSecondary", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Website Name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/sourcecontrols/web": { "get": { "tags": [ @@ -16858,7 +16976,10 @@ "202": { "description": "Operation is in progress.", "schema": { - "$ref": "./CommonDefinitions.json#/definitions/Operation" + "type": "array", + "items": { + "$ref": "#/definitions/NetworkTrace" + } } }, "default": { @@ -18554,6 +18675,10 @@ "snapshotTime": { "description": "Point in time to restore the deleted app from, formatted as a DateTime string. \nIf unspecified, default value is the time that the app was deleted.", "type": "string" + }, + "useDRSecondary": { + "description": "If true, the snapshot is retrieved from DRSecondary endpoint.", + "type": "boolean" } }, "x-ms-client-flatten": true @@ -21044,6 +21169,10 @@ "ignoreConflictingHostNames": { "description": "If true, custom hostname conflicts will be ignored when recovering to a target web app.\nThis setting is only necessary when RecoverConfiguration is enabled.", "type": "boolean" + }, + "useDRSecondary": { + "description": "If true, the snapshot is retrieved from DRSecondary endpoint.", + "type": "boolean" } }, "x-ms-client-flatten": true diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/examples/GetWebSiteNetworkTraceOperation.json b/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/examples/GetWebSiteNetworkTraceOperation.json index 72a7fd4e6b1e..cce0885ef8af 100644 --- a/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/examples/GetWebSiteNetworkTraceOperation.json +++ b/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/examples/GetWebSiteNetworkTraceOperation.json @@ -20,10 +20,16 @@ }, "202": { "headers": { - "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/SampleApp/operationresults/c291433b-53ad-4c49-8cae-0a293eae1c6d", - "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/SampleApp/operationresults/c291433b-53ad-4c49-8cae-0a293eae1c6d" + "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/SampleApp/networktraces/current/operationresults/c291433b-53ad-4c49-8cae-0a293eae1c6d", + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/SampleApp/networktraces/current/operationresults/c291433b-53ad-4c49-8cae-0a293eae1c6d" }, - "body": { } + "body": [ + { + "path": "D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip", + "status": "Succeeded", + "message": "Trace file has been saved as D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip" + } + ] } } } \ No newline at end of file diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/examples/GetWebSiteNetworkTraceOperationV2.json b/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/examples/GetWebSiteNetworkTraceOperationV2.json deleted file mode 100644 index 0921bcd01c37..000000000000 --- a/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/examples/GetWebSiteNetworkTraceOperationV2.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "parameters": { - "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", - "resourceGroupName": "testrg123", - "name": "SampleApp", - "slot": "Production", - "operationId": "c291433b-53ad-4c49-8cae-0a293eae1c6d", - "api-version": "2018-02-01" - }, - "responses": { - "200": { - "headers": {}, - "body": [ - { - "path": "D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip", - "status": "Succeeded", - "message": "Trace file has been saved as D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip" - } - ] - }, - "202": { - "headers": { - "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/SampleApp/networktraces/current/operationresults/c291433b-53ad-4c49-8cae-0a293eae1c6d", - "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/SampleApp/networktraces/current/operationresults/c291433b-53ad-4c49-8cae-0a293eae1c6d" - }, - "body": { } - } - } -} \ No newline at end of file diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/examples/StartWebSiteNetworkTraceOperation.json b/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/examples/StartWebSiteNetworkTraceOperation.json index 4259fde0568a..24465b2d26ee 100644 --- a/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/examples/StartWebSiteNetworkTraceOperation.json +++ b/specification/web/resource-manager/Microsoft.Web/stable/2018-02-01/examples/StartWebSiteNetworkTraceOperation.json @@ -23,7 +23,13 @@ "location": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/SampleApp/operationresults/c291433b-53ad-4c49-8cae-0a293eae1c6d", "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.Web/sites/SampleApp/operationresults/c291433b-53ad-4c49-8cae-0a293eae1c6d" }, - "body": {} + "body": [ + { + "path": "D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip", + "status": "Succeeded", + "message": "Trace file has been saved as D:\\home\\LogFiles\\networktrace\\10.0.0.1_2018_02_01T00_00_00.zip" + } + ] } } } \ No newline at end of file diff --git a/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/Microsoft.WorkloadMonitor.json b/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/Microsoft.WorkloadMonitor.json index e41b71a73720..e664776c4327 100644 --- a/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/Microsoft.WorkloadMonitor.json +++ b/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/Microsoft.WorkloadMonitor.json @@ -630,6 +630,149 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.WorkloadMonitor/notificationSettings/{notificationSettingName}": { + "get": { + "tags": [ + "WLIExtension" + ], + "summary": "Get a of notification setting for a resource.", + "operationId": "NotificationSettings_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "resourceNamespace", + "in": "path", + "description": "The Namespace of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "The type of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Name of the resource.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/notificationSettingName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. At least one component found.", + "schema": { + "$ref": "#/definitions/NotificationSetting" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "NotificationSettings_Get": { + "$ref": "./examples/NotificationSettings_Get.json" + } + } + }, + "put": { + "tags": [ + "WLIExtension" + ], + "summary": "Update notification settings for a resource.", + "operationId": "NotificationSettings_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "resourceNamespace", + "in": "path", + "description": "The Namespace of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "The type of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Name of the resource.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/notificationSettingName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "body", + "in": "body", + "description": "Body of the NotificationSetting PUT object.", + "required": true, + "schema": { + "$ref": "#/definitions/NotificationSetting" + } + } + ], + "responses": { + "200": { + "description": "OK. At least one component found.", + "schema": { + "$ref": "#/definitions/NotificationSetting" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "NotificationSettings_Update": { + "$ref": "./examples/NotificationSettings_Update.json" + } + } + } + }, "/subscriptions/{subscriptionId}/providers/Microsoft.WorkloadMonitor/componentsSummary": { "get": { "tags": [ @@ -1446,23 +1589,22 @@ "description": "Model for collection of notificationSettings.", "type": "object", "properties": { - "nextLink": { - "description": "URL to the next set of results.", - "type": "string", - "readOnly": true - }, "value": { - "description": "Collection of components.", "type": "array", "items": { "$ref": "#/definitions/NotificationSetting" - }, + } + }, + "nextLink": { + "description": "URL to the next set of results.", + "type": "string", "readOnly": true } - } + }, + "x-ms-azure-resource": true }, "NotificationSetting": { - "description": "Model for component.", + "description": "Model for NotificationSetting.", "type": "object", "allOf": [ { @@ -1477,7 +1619,7 @@ }, "properties": { "$ref": "#/definitions/NotificationSettingProperties", - "description": "Properties of the component.", + "description": "Properties of Notification Settings", "readOnly": true, "x-ms-client-flatten": true } @@ -1487,7 +1629,7 @@ "description": "Model for properties of a NotificationSetting.", "type": "object", "properties": { - "actionGroups": { + "actionGroupResourceIds": { "description": "List of action group resource ids to be notified", "type": "array", "items": { @@ -1696,6 +1838,17 @@ "type": "string", "format": "uuid", "x-ms-parameter-location": "method" + }, + "notificationSettingName": { + "name": "notificationSettingName", + "in": "path", + "description": "Default string modeled as parameter for URL to work correctly.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" } }, "securityDefinitions": { diff --git a/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/Components_Get.json b/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/Components_Get.json index 1fd37bc11b47..1e74ef7c48ab 100644 --- a/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/Components_Get.json +++ b/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/Components_Get.json @@ -35,7 +35,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/components/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/components/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b'", "type": "Microsoft.WorkloadMonitor/workloadInsights/components" } diff --git a/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/Components_ListByResource.json b/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/Components_ListByResource.json index 4a8ab7faa178..7865bbebab67 100644 --- a/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/Components_ListByResource.json +++ b/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/Components_ListByResource.json @@ -59,7 +59,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/components/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/components/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b'", "type": "Microsoft.WorkloadMonitor/workloadInsights/components" }, @@ -111,7 +111,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/components/ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/components/ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b'", "name": "ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b'", "type": "Microsoft.WorkloadMonitor/workloadInsights/components" }, @@ -163,7 +163,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/components/ComponentId='804fc44e-c49d-58f0-3b03-bf24f7d11663'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/components/ComponentId='804fc44e-c49d-58f0-3b03-bf24f7d11663'", "name": "ComponentId='804fc44e-c49d-58f0-3b03-bf24f7d11663'", "type": "Microsoft.WorkloadMonitor/workloadInsights/components" }, @@ -215,7 +215,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/components/ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/components/ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b'", "name": "ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b'", "type": "Microsoft.WorkloadMonitor/workloadInsights/components" }, @@ -267,7 +267,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/components/ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/components/ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466'", "name": "ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466'", "type": "Microsoft.WorkloadMonitor/workloadInsights/components" }, @@ -319,7 +319,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/components/ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/components/ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef'", "name": "ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef'", "type": "Microsoft.WorkloadMonitor/workloadInsights/components" }, @@ -371,7 +371,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/components/ComponentId='05a70c91-2163-d974-638d-2ddda2308153'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/components/ComponentId='05a70c91-2163-d974-638d-2ddda2308153'", "name": "ComponentId='05a70c91-2163-d974-638d-2ddda2308153'", "type": "Microsoft.WorkloadMonitor/workloadInsights/components" }, @@ -423,7 +423,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/components/ComponentId='3d945642-b98c-37b1-a75c-ee03cdb599ad'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/components/ComponentId='3d945642-b98c-37b1-a75c-ee03cdb599ad'", "name": "ComponentId='3d945642-b98c-37b1-a75c-ee03cdb599ad'", "type": "Microsoft.WorkloadMonitor/workloadInsights/components" } diff --git a/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/MonitorInstances_Get.json b/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/MonitorInstances_Get.json index e59e24c29f4b..90504e7415ed 100644 --- a/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/MonitorInstances_Get.json +++ b/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/MonitorInstances_Get.json @@ -59,7 +59,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=052f9b7d-7bf0-7f61-966b-f372e207ef4e'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=052f9b7d-7bf0-7f61-966b-f372e207ef4e'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=052f9b7d-7bf0-7f61-966b-f372e207ef4e'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" } diff --git a/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/MonitorInstances_ListByResource.json b/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/MonitorInstances_ListByResource.json index c5e670ff255c..c6648079a2f2 100644 --- a/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/MonitorInstances_ListByResource.json +++ b/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/MonitorInstances_ListByResource.json @@ -60,7 +60,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=052f9b7d-7bf0-7f61-966b-f372e207ef4e'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=052f9b7d-7bf0-7f61-966b-f372e207ef4e'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=052f9b7d-7bf0-7f61-966b-f372e207ef4e'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -113,7 +113,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=b974db31-cf93-9d6b-740a-9f8508b92712'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=b974db31-cf93-9d6b-740a-9f8508b92712'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=b974db31-cf93-9d6b-740a-9f8508b92712'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -166,7 +166,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=a6c69968-61aa-a6b9-db6e-83a0da6110ea'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=a6c69968-61aa-a6b9-db6e-83a0da6110ea'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=a6c69968-61aa-a6b9-db6e-83a0da6110ea'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -219,7 +219,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=c9db5e55-f3c8-7366-6b98-bc727e726a4b'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=c9db5e55-f3c8-7366-6b98-bc727e726a4b'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=c9db5e55-f3c8-7366-6b98-bc727e726a4b'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -272,7 +272,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -325,7 +325,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b',MonitorId=b787a678-ce4b-c473-b6b4-6e1dbf184a61'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b',MonitorId=b787a678-ce4b-c473-b6b4-6e1dbf184a61'", "name": "ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b',MonitorId=b787a678-ce4b-c473-b6b4-6e1dbf184a61'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -378,7 +378,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=9a86ee3f-d133-b183-a400-6ad3a3834c86'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=9a86ee3f-d133-b183-a400-6ad3a3834c86'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=9a86ee3f-d133-b183-a400-6ad3a3834c86'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -431,7 +431,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=6799aaae-533c-9a8d-331f-ea833db85d1d'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=6799aaae-533c-9a8d-331f-ea833db85d1d'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=6799aaae-533c-9a8d-331f-ea833db85d1d'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -484,7 +484,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=75472fe7-e406-32a6-4198-0502ecee1bfe'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=75472fe7-e406-32a6-4198-0502ecee1bfe'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=75472fe7-e406-32a6-4198-0502ecee1bfe'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -537,7 +537,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=f69b8b3f-3ba6-adf0-cdec-7c01b385d13c'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=f69b8b3f-3ba6-adf0-cdec-7c01b385d13c'", "name": "ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=f69b8b3f-3ba6-adf0-cdec-7c01b385d13c'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -590,7 +590,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=887e162a-74f4-2951-64e5-87dd5f076342'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=887e162a-74f4-2951-64e5-87dd5f076342'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=887e162a-74f4-2951-64e5-87dd5f076342'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -643,7 +643,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b',MonitorId=a6c69968-61aa-a6b9-db6e-83a0da6110ea'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b',MonitorId=a6c69968-61aa-a6b9-db6e-83a0da6110ea'", "name": "ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b',MonitorId=a6c69968-61aa-a6b9-db6e-83a0da6110ea'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -696,7 +696,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -749,7 +749,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=3c184dff-8813-38f9-e965-2a9561425180'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=3c184dff-8813-38f9-e965-2a9561425180'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=3c184dff-8813-38f9-e965-2a9561425180'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -802,7 +802,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=4585a2f7-87c5-54e7-2b76-81af1073aec8'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=4585a2f7-87c5-54e7-2b76-81af1073aec8'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=4585a2f7-87c5-54e7-2b76-81af1073aec8'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -855,7 +855,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=37232a87-988f-6256-3033-ea0c102c2d43'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=37232a87-988f-6256-3033-ea0c102c2d43'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=37232a87-988f-6256-3033-ea0c102c2d43'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -908,7 +908,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b',MonitorId=50fd1db1-7111-d67e-3f81-e73203d073e3'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b',MonitorId=50fd1db1-7111-d67e-3f81-e73203d073e3'", "name": "ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b',MonitorId=50fd1db1-7111-d67e-3f81-e73203d073e3'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -961,7 +961,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=41eccc60-5578-2eea-e104-8bf7022ed5af'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=41eccc60-5578-2eea-e104-8bf7022ed5af'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=41eccc60-5578-2eea-e104-8bf7022ed5af'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -1014,7 +1014,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='804fc44e-c49d-58f0-3b03-bf24f7d11663',MonitorId=e80001dc-3aa8-e5c8-f782-5b4ef144fd5c'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='804fc44e-c49d-58f0-3b03-bf24f7d11663',MonitorId=e80001dc-3aa8-e5c8-f782-5b4ef144fd5c'", "name": "ComponentId='804fc44e-c49d-58f0-3b03-bf24f7d11663',MonitorId=e80001dc-3aa8-e5c8-f782-5b4ef144fd5c'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -1067,7 +1067,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=c688a072-2a8f-6409-1895-a0cc363cb326'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=c688a072-2a8f-6409-1895-a0cc363cb326'", "name": "ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=c688a072-2a8f-6409-1895-a0cc363cb326'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -1120,7 +1120,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", "name": "ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -1173,7 +1173,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=850400b6-9fd2-d927-bc47-9934dfe28845'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=850400b6-9fd2-d927-bc47-9934dfe28845'", "name": "ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=850400b6-9fd2-d927-bc47-9934dfe28845'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -1226,7 +1226,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='804fc44e-c49d-58f0-3b03-bf24f7d11663',MonitorId=94df5e8c-989a-f595-86b0-0baba4662bfb'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='804fc44e-c49d-58f0-3b03-bf24f7d11663',MonitorId=94df5e8c-989a-f595-86b0-0baba4662bfb'", "name": "ComponentId='804fc44e-c49d-58f0-3b03-bf24f7d11663',MonitorId=94df5e8c-989a-f595-86b0-0baba4662bfb'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -1279,7 +1279,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=33f2143c-d677-6d10-c676-2f2bac54bbbd'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=33f2143c-d677-6d10-c676-2f2bac54bbbd'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=33f2143c-d677-6d10-c676-2f2bac54bbbd'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -1332,7 +1332,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=99dbb2f7-9335-40c1-562e-0bee9e43b029'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=99dbb2f7-9335-40c1-562e-0bee9e43b029'", "name": "ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=99dbb2f7-9335-40c1-562e-0bee9e43b029'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -1385,7 +1385,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=99dbb2f7-9335-40c1-562e-0bee9e43b029'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=99dbb2f7-9335-40c1-562e-0bee9e43b029'", "name": "ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=99dbb2f7-9335-40c1-562e-0bee9e43b029'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -1438,7 +1438,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=850400b6-9fd2-d927-bc47-9934dfe28845'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=850400b6-9fd2-d927-bc47-9934dfe28845'", "name": "ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=850400b6-9fd2-d927-bc47-9934dfe28845'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -1491,7 +1491,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=584e5846-a4a3-a17a-26fd-25014f727ee9'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=584e5846-a4a3-a17a-26fd-25014f727ee9'", "name": "ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=584e5846-a4a3-a17a-26fd-25014f727ee9'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -1544,7 +1544,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=8966cbe8-38d2-57be-5937-3d43e38a3df5'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=8966cbe8-38d2-57be-5937-3d43e38a3df5'", "name": "ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=8966cbe8-38d2-57be-5937-3d43e38a3df5'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -1597,7 +1597,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=584e5846-a4a3-a17a-26fd-25014f727ee9'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=584e5846-a4a3-a17a-26fd-25014f727ee9'", "name": "ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=584e5846-a4a3-a17a-26fd-25014f727ee9'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -1650,7 +1650,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=f69b8b3f-3ba6-adf0-cdec-7c01b385d13c'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=f69b8b3f-3ba6-adf0-cdec-7c01b385d13c'", "name": "ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=f69b8b3f-3ba6-adf0-cdec-7c01b385d13c'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -1703,7 +1703,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=8966cbe8-38d2-57be-5937-3d43e38a3df5'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=8966cbe8-38d2-57be-5937-3d43e38a3df5'", "name": "ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=8966cbe8-38d2-57be-5937-3d43e38a3df5'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -1756,7 +1756,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='3d945642-b98c-37b1-a75c-ee03cdb599ad',MonitorId=07cacb31-615d-5c7a-e118-fd55c17b5a2c'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='3d945642-b98c-37b1-a75c-ee03cdb599ad',MonitorId=07cacb31-615d-5c7a-e118-fd55c17b5a2c'", "name": "ComponentId='3d945642-b98c-37b1-a75c-ee03cdb599ad',MonitorId=07cacb31-615d-5c7a-e118-fd55c17b5a2c'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -1809,7 +1809,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='804fc44e-c49d-58f0-3b03-bf24f7d11663',MonitorId=194d2011-69ed-50bb-4d50-a394d48fb048'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='804fc44e-c49d-58f0-3b03-bf24f7d11663',MonitorId=194d2011-69ed-50bb-4d50-a394d48fb048'", "name": "ComponentId='804fc44e-c49d-58f0-3b03-bf24f7d11663',MonitorId=194d2011-69ed-50bb-4d50-a394d48fb048'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -1862,7 +1862,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=c688a072-2a8f-6409-1895-a0cc363cb326'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=c688a072-2a8f-6409-1895-a0cc363cb326'", "name": "ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=c688a072-2a8f-6409-1895-a0cc363cb326'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -1915,7 +1915,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='3d945642-b98c-37b1-a75c-ee03cdb599ad',MonitorId=728733ca-14e2-9ddc-8ec8-5de911bdf35f'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='3d945642-b98c-37b1-a75c-ee03cdb599ad',MonitorId=728733ca-14e2-9ddc-8ec8-5de911bdf35f'", "name": "ComponentId='3d945642-b98c-37b1-a75c-ee03cdb599ad',MonitorId=728733ca-14e2-9ddc-8ec8-5de911bdf35f'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -1968,7 +1968,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=1aa535e9-d09c-3557-297f-62923069ba81'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=1aa535e9-d09c-3557-297f-62923069ba81'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=1aa535e9-d09c-3557-297f-62923069ba81'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -2021,7 +2021,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", "name": "ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -2074,7 +2074,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", "name": "ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -2127,7 +2127,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=c2396f9e-22eb-9a72-0149-ea3b9a219e64'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=c2396f9e-22eb-9a72-0149-ea3b9a219e64'", "name": "ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=c2396f9e-22eb-9a72-0149-ea3b9a219e64'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -2180,7 +2180,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='3d945642-b98c-37b1-a75c-ee03cdb599ad',MonitorId=b12539ea-7122-af29-6af6-0047432bab6a'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='3d945642-b98c-37b1-a75c-ee03cdb599ad',MonitorId=b12539ea-7122-af29-6af6-0047432bab6a'", "name": "ComponentId='3d945642-b98c-37b1-a75c-ee03cdb599ad',MonitorId=b12539ea-7122-af29-6af6-0047432bab6a'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -2233,7 +2233,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", "name": "ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -2286,7 +2286,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=c2396f9e-22eb-9a72-0149-ea3b9a219e64'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=c2396f9e-22eb-9a72-0149-ea3b9a219e64'", "name": "ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=c2396f9e-22eb-9a72-0149-ea3b9a219e64'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -2339,7 +2339,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='804fc44e-c49d-58f0-3b03-bf24f7d11663',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='804fc44e-c49d-58f0-3b03-bf24f7d11663',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", "name": "ComponentId='804fc44e-c49d-58f0-3b03-bf24f7d11663',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -2392,7 +2392,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", "name": "ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -2445,7 +2445,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=22e3b675-109e-9292-952e-7554604e3605'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=22e3b675-109e-9292-952e-7554604e3605'", "name": "ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=22e3b675-109e-9292-952e-7554604e3605'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -2498,7 +2498,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='804fc44e-c49d-58f0-3b03-bf24f7d11663',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='804fc44e-c49d-58f0-3b03-bf24f7d11663',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", "name": "ComponentId='804fc44e-c49d-58f0-3b03-bf24f7d11663',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -2551,7 +2551,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=062d163a-0742-73d9-1d9d-a582c82127e4'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=062d163a-0742-73d9-1d9d-a582c82127e4'", "name": "ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=062d163a-0742-73d9-1d9d-a582c82127e4'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -2604,7 +2604,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=062d163a-0742-73d9-1d9d-a582c82127e4'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=062d163a-0742-73d9-1d9d-a582c82127e4'", "name": "ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=062d163a-0742-73d9-1d9d-a582c82127e4'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -2657,7 +2657,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=22e3b675-109e-9292-952e-7554604e3605'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=22e3b675-109e-9292-952e-7554604e3605'", "name": "ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=22e3b675-109e-9292-952e-7554604e3605'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -2710,7 +2710,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=8a16058b-d31e-c156-3460-2c6cae7bfc49'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=8a16058b-d31e-c156-3460-2c6cae7bfc49'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=8a16058b-d31e-c156-3460-2c6cae7bfc49'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -2763,7 +2763,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=08ec2bb4-32be-2fae-2d5a-6b65feb200a6'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=08ec2bb4-32be-2fae-2d5a-6b65feb200a6'", "name": "ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=08ec2bb4-32be-2fae-2d5a-6b65feb200a6'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -2816,7 +2816,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b',MonitorId=b8375781-0835-15b6-c782-f497b54b65ea'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b',MonitorId=b8375781-0835-15b6-c782-f497b54b65ea'", "name": "ComponentId='06400e6a-6bac-1717-1e0d-e28f31a2e88b',MonitorId=b8375781-0835-15b6-c782-f497b54b65ea'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -2869,7 +2869,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", "name": "ComponentId='1a526816-f757-7328-d0b2-7daf65fd919b',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -2922,7 +2922,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", "name": "ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -2975,7 +2975,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", "name": "ComponentId='767aea7b-2a28-8c7b-9a61-153eeced9466',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -3028,7 +3028,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", "name": "ComponentId='ebf38b50-d78a-817b-89ee-0e5870c643ef',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -3081,7 +3081,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='3d945642-b98c-37b1-a75c-ee03cdb599ad',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='3d945642-b98c-37b1-a75c-ee03cdb599ad',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", "name": "ComponentId='3d945642-b98c-37b1-a75c-ee03cdb599ad',MonitorId=7db3eece-fd0d-fddd-3af7-f8371a914874'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -3134,7 +3134,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=08ec2bb4-32be-2fae-2d5a-6b65feb200a6'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=08ec2bb4-32be-2fae-2d5a-6b65feb200a6'", "name": "ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=08ec2bb4-32be-2fae-2d5a-6b65feb200a6'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -3187,7 +3187,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", "name": "ComponentId='05a70c91-2163-d974-638d-2ddda2308153',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -3240,7 +3240,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='3d945642-b98c-37b1-a75c-ee03cdb599ad',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='3d945642-b98c-37b1-a75c-ee03cdb599ad',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", "name": "ComponentId='3d945642-b98c-37b1-a75c-ee03cdb599ad',MonitorId=e3ab86a1-34fa-35b5-b864-da4db993c0f5'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" }, @@ -3293,7 +3293,7 @@ } }, "etag": null, - "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.WorkloadMonitor/workloadInsights/Canary-WLI-2/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=7af5bcb4-31e9-5ec9-268f-178c265a6c2c'", + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/healthInstances/ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=7af5bcb4-31e9-5ec9-268f-178c265a6c2c'", "name": "ComponentId='d91ce384-b682-883a-d02b-129bf37f218b',MonitorId=7af5bcb4-31e9-5ec9-268f-178c265a6c2c'", "type": "Microsoft.WorkloadMonitor/workloadInsights/healthInstances" } diff --git a/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/NotificationSettings_Get.json b/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/NotificationSettings_Get.json new file mode 100644 index 000000000000..f3a7d89b4f54 --- /dev/null +++ b/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/NotificationSettings_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "a7f23fdb-e626-4f95-89aa-3a360a90861e", + "resourceGroupName": "viv_rg", + "resourceNamespace": "Microsoft.Compute", + "resourceType": "virtualMachines", + "resourceName": "Canary-WLI-2", + "notificationSettingName": "default", + "api-version": "2018-08-31-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "actionGroupResourceIds": [] + }, + "etag": null, + "id": "/subscriptions/a7f23fdb-e626-4f95-89aa-3a360a90861e/resourcegroups/viv_rg/providers/Microsoft.Compute/virtualMachines/Canary-WLI-2/providers/Microsoft.WorkloadMonitor/notificationSettings/default", + "name": "default", + "type": "Microsoft.WorkloadMonitor/virtualMachines/notificationSettings" + } + } + } +} \ No newline at end of file diff --git a/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/NotificationSettings_ListByResource.json b/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/NotificationSettings_ListByResource.json index 8f1c388fe849..2ac99f1039bb 100644 --- a/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/NotificationSettings_ListByResource.json +++ b/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/NotificationSettings_ListByResource.json @@ -10,17 +10,13 @@ "responses": { "200": { "body": { - "value": [ + "value": [ { - "etag": null, "properties": { - "actionGroups": [ - - ] - } - } - ], - "nextLink": null + "actionGroupResourceIds": [] + } + } + ] } } } diff --git a/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/NotificationSettings_Update.json b/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/NotificationSettings_Update.json new file mode 100644 index 000000000000..03397340f7b7 --- /dev/null +++ b/specification/workloadmonitor/resource-manager/microsoft.workloadmonitor/preview/2018-08-31-preview/examples/NotificationSettings_Update.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "a7f23fdb-e626-4f95-89aa-3a360a90861e", + "resourceGroupName": "viv_rg", + "resourceNamespace": "Microsoft.Compute", + "resourceType": "virtualMachines", + "resourceName": "Canary-WLI-2", + "notificationSettingName": "default", + "api-version": "2018-08-31-preview", + "body": { + "properties": { + "actionGroupResourceIds": [ + "/subscriptions/12c5bb75-2c2c-44b1-8d7d-cbf4d12ff5c1/resourceGroups/vgajulaRG/providers/microsoft.insights/actiongroups/wli-we" + ] + } + } + }, + "responses": { + "200": { + "body": { + + } + } + } +} \ No newline at end of file diff --git a/specification/workloadmonitor/resource-manager/readme.md b/specification/workloadmonitor/resource-manager/readme.md index 0df5b6b5f4bc..ce490ee4f4ef 100644 --- a/specification/workloadmonitor/resource-manager/readme.md +++ b/specification/workloadmonitor/resource-manager/readme.md @@ -54,7 +54,7 @@ This is not used by Autorest itself. ``` yaml $(swagger-to-sdk) swagger-to-sdk: - - repo: azure-sdk-for-python + - repo: azure-sdk-for-python - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-node @@ -75,13 +75,11 @@ csharp: clear-output-folder: true ``` - ## Python These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. Use `--python-mode=update` if you already have a setup.py and just want to update the code itself. - ``` yaml $(python) python-mode: create python: @@ -104,6 +102,7 @@ python: ``` + ## Go These settings apply only when `--go` is specified on the command line.